Advertisement
Guest User

Untitled

a guest
Feb 21st, 2018
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. import Data.List
  2. import Data.Char
  3. import Data.Maybe
  4.  
  5. a = [1..10000]
  6.  
  7. cubes = [show (y^3) | y<-a]
  8.  
  9. contains x y z = if length(x) /= length(y) && z == 0 then False
  10.     else if z == length(x) then True
  11.     else if (x!!z) `elem` y then contains x (removeElement x y z) (z+1)
  12.     else False
  13.  
  14. removeElement x y z = (take (fromJust(elemIndex (x!!(z)) y)) y)++(drop (1+fromJust(elemIndex (x!!(z)) y)) y)
  15.  
  16. checkIt x = [y | y<-cubes, contains x y 0]
  17.  
  18. test x = if length(checkIt (x)) == 5 then True
  19.     else False
  20.    
  21. finally :: Int
  22. finally = read (minimum [y | y<-cubes , test y])
  23.  
  24. main = do
  25.     print(finally)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement