Submission #1435167


Source Code Expand

import Data.Fixed

data Wind = Wind String Int

instance Show Wind where
  show (Wind d w) = unwords [d',w'] where
    d' = if w == 0 then "C" else d
    w' = show w

main :: IO ()
main = do
  [deg,dis] <- fmap read . words <$> getLine :: IO [Int]
  let w = Wind (getDir deg) (getW dis)
  print w

getDir :: Int -> String
getDir deg  | (112.5 <= deg') && deg' < 337.5 = "NNE"
            | deg' < 562.5 = "NE"
            | deg' < 787.5 = "ENE"
            | deg' < 1012.5 = "E"
            | deg' < 1237.5 = "ESE"
            | deg' < 1462.5 = "SE"
            | deg' < 1687.5 = "SSE"
            | deg' < 1912.5 = "S"
            | deg' < 2137.5 = "SSW"
            | deg' < 2362.5 = "SW"
            | deg' < 2587.5 = "WSW"
            | deg' < 2812.5 = "W"
            | deg' < 3037.5 = "WNW"
            | deg' < 3262.5 = "NW"
            | deg' < 3487.5 = "NNW"
            | otherwise = "N"
            where
              deg' = fromIntegral deg :: Centi

getW :: Int -> Int
getW w  | w' <= 0.2 = 0
        | w' <= 1.5 = 1
        | w' <= 3.3 = 2
        | w' <= 5.4 = 3
        | w' <= 7.9 = 4
        | w' <= 10.7 = 5
        | w' <= 13.8 = 6
        | w' <= 17.1 = 7
        | w' <= 20.7 = 8
        | w' <= 24.4 = 9
        | w' <= 28.4 = 10
        | w' <= 32.6 = 11
        | otherwise = 12
        where
          wt = fromIntegral w / 60.0 :: Centi
          w' = c2d wt

c2d :: Centi -> Deci
c2d n = if toRational n - toRational n' >= 0.05 then n' + 0.1 else n' where
  n' = (fromRational . toRational) n :: Deci

Submission Info

Submission Time
Task C - 風力観測
User fromT
Language Haskell (GHC 7.10.3)
Score 0
Code Size 1586 Byte
Status WA
Exec Time 2 ms
Memory 508 KB

Judge Result

Set Name all
Score / Max Score 0 / 100
Status
AC × 65
WA × 1
Set Name Test Cases
all 00_sample_01.txt, 00_sample_02.txt, 00_sample_03.txt, 00_sample_04.txt, 00_sample_05.txt, 00_sample_06.txt, 00_sample_07.txt, 00_sample_08.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, test_18.txt, test_19.txt, test_20.txt, test_21.txt, test_22.txt, test_23.txt, test_24.txt, test_25.txt, test_26.txt, test_27.txt, test_28.txt, test_29.txt, test_30.txt, test_31.txt, test_32.txt, test_33.txt, test_34.txt, test_35.txt, test_36.txt, test_37.txt, test_38.txt, test_39.txt, test_40.txt, test_41.txt, test_42.txt, test_43.txt, test_44.txt, test_45.txt, test_46.txt, test_47.txt, test_48.txt, test_49.txt, test_50.txt, test_51.txt, test_52.txt, test_53.txt, test_54.txt, test_55.txt, test_56.txt, test_57.txt, test_58.txt
Case Name Status Exec Time Memory
00_sample_01.txt AC 1 ms 508 KB
00_sample_02.txt AC 1 ms 508 KB
00_sample_03.txt AC 1 ms 508 KB
00_sample_04.txt AC 1 ms 508 KB
00_sample_05.txt AC 1 ms 508 KB
00_sample_06.txt AC 1 ms 508 KB
00_sample_07.txt AC 1 ms 508 KB
00_sample_08.txt AC 1 ms 508 KB
test_01.txt AC 1 ms 508 KB
test_02.txt AC 1 ms 508 KB
test_03.txt AC 1 ms 508 KB
test_04.txt AC 1 ms 508 KB
test_05.txt AC 1 ms 508 KB
test_06.txt AC 1 ms 508 KB
test_07.txt AC 1 ms 508 KB
test_08.txt AC 1 ms 508 KB
test_09.txt AC 1 ms 508 KB
test_10.txt AC 1 ms 508 KB
test_11.txt AC 1 ms 508 KB
test_12.txt AC 1 ms 508 KB
test_13.txt AC 1 ms 508 KB
test_14.txt AC 1 ms 508 KB
test_15.txt AC 1 ms 508 KB
test_16.txt AC 1 ms 508 KB
test_17.txt AC 1 ms 508 KB
test_18.txt AC 1 ms 508 KB
test_19.txt AC 1 ms 508 KB
test_20.txt AC 1 ms 508 KB
test_21.txt AC 1 ms 508 KB
test_22.txt AC 1 ms 508 KB
test_23.txt AC 1 ms 508 KB
test_24.txt AC 1 ms 508 KB
test_25.txt AC 1 ms 508 KB
test_26.txt AC 1 ms 508 KB
test_27.txt WA 1 ms 508 KB
test_28.txt AC 1 ms 508 KB
test_29.txt AC 1 ms 508 KB
test_30.txt AC 1 ms 508 KB
test_31.txt AC 1 ms 508 KB
test_32.txt AC 1 ms 508 KB
test_33.txt AC 1 ms 508 KB
test_34.txt AC 1 ms 508 KB
test_35.txt AC 1 ms 508 KB
test_36.txt AC 1 ms 508 KB
test_37.txt AC 1 ms 508 KB
test_38.txt AC 2 ms 508 KB
test_39.txt AC 1 ms 508 KB
test_40.txt AC 1 ms 508 KB
test_41.txt AC 1 ms 508 KB
test_42.txt AC 1 ms 508 KB
test_43.txt AC 1 ms 508 KB
test_44.txt AC 1 ms 508 KB
test_45.txt AC 1 ms 508 KB
test_46.txt AC 1 ms 508 KB
test_47.txt AC 1 ms 508 KB
test_48.txt AC 1 ms 508 KB
test_49.txt AC 1 ms 508 KB
test_50.txt AC 2 ms 508 KB
test_51.txt AC 2 ms 508 KB
test_52.txt AC 2 ms 508 KB
test_53.txt AC 1 ms 508 KB
test_54.txt AC 1 ms 508 KB
test_55.txt AC 1 ms 508 KB
test_56.txt AC 1 ms 508 KB
test_57.txt AC 1 ms 508 KB
test_58.txt AC 1 ms 508 KB