Submission #1126922


Source Code Expand

import Data.Char

convert :: String -> [Int]
convert [] = []
convert s = cons (case break (== ' ') s of
              (l,s') -> (f l,case s' of
                         [] -> []
                         _:s'' -> convert s''))
  where cons ~(x,y) = x : y
        f = convert'.strToInt

strToInt :: String -> [Int]
strToInt [] = []
strToInt (x:xs) 
  | x == ' '  = strToInt xs
  | otherwise = (ord x - ord '0' :: Int) : strToInt xs

convert' :: (Integral t) => [t] -> t
convert' []  = 0
convert' [x] = x
convert' xs  = convert'' 0 xs
  where convert'' x [y]    = x + y
        convert'' x (y:ys) = convert'' (10 * (x + y)) ys

main :: IO ()
main = do
  hoge0 <- getLine
  hoge1 <- getLine
  print $ (sum.convert) hoge0 - (sum.convert) hoge1

Submission Info

Submission Time
Task A - 積雪深差
User g2_xpf
Language Haskell (GHC 7.10.3)
Score 100
Code Size 766 Byte
Status AC
Exec Time 1 ms
Memory 380 KB

Judge Result

Set Name all
Score / Max Score 100 / 100
Status
AC × 20
Set Name Test Cases
all 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, test_01.txt, test_02.txt, test_03.txt, test_04.txt, test_05.txt, test_06.txt, test_07.txt, test_08.txt, test_09.txt, test_10.txt, test_11.txt, test_12.txt, test_13.txt, test_14.txt, test_15.txt, test_16.txt, test_17.txt
Case Name Status Exec Time Memory
00_sample_01.txt AC 1 ms 380 KB
00_sample_02.txt AC 1 ms 380 KB
00_sample_03.txt AC 1 ms 380 KB
test_01.txt AC 1 ms 380 KB
test_02.txt AC 1 ms 380 KB
test_03.txt AC 1 ms 380 KB
test_04.txt AC 1 ms 380 KB
test_05.txt AC 1 ms 380 KB
test_06.txt AC 1 ms 380 KB
test_07.txt AC 1 ms 380 KB
test_08.txt AC 1 ms 380 KB
test_09.txt AC 1 ms 380 KB
test_10.txt AC 1 ms 380 KB
test_11.txt AC 1 ms 380 KB
test_12.txt AC 1 ms 380 KB
test_13.txt AC 1 ms 380 KB
test_14.txt AC 1 ms 380 KB
test_15.txt AC 1 ms 380 KB
test_16.txt AC 1 ms 380 KB
test_17.txt AC 1 ms 380 KB