Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- module Main where
- import qualified Data.Array as A
- main :: IO ()
- main = do size <- fmap read getLine :: IO Int
- tree <- fmap (map read . words) getLine :: IO [Int]
- let m = A.listArray (0, size) $ map (\x -> if x == -1 then 1 else 1 + fun1 (a A.! x)) tree
- a = A.listArray (0, size) tree
- fun1 i = if i == -1 then 1 else 1 + m A.! i
- print $ maximum $ map fun1 tree
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement