Invert FizzBuzz by xenophobia

f 3=" Fizz";f 5=" Buzz";f 1="";f _=" FizzBuzz";m@main=do{s<-getLine;putStrLn.unwords.map show.snd.minimum$(999,[]):[(j-i,[i,j])|i<-[3..15],j<-[i..181],(>>=(f.(`gcd`15)))[i..j]==' ':s];m}

Note that non-ascii characters in the above source code will be escaped (such as \x9f).

download

return to the top page