Submission #108354
Source Code Expand
import Control.Applicative data Dir = N | NNE | NE | ENE | E | ESE | SE | SSE | S | SSW | SW | WSW | W | WNW | NW | NNW deriving (Show) main :: IO () main = do [deg, dis] <- map read . words <$> getLine let w = getW dis dir = if w == 0 then "C" else show $ getDir deg putStrLn $ unwords [dir, show w] getDir :: Int -> Dir getDir deg | deg >= 113 && deg < 338 = NNE | deg >= 338 && deg < 563 = NE | deg >= 563 && deg < 788 = ENE | deg >= 788 && deg < 1013 = E | deg >= 1013 && deg < 1238 = ESE | deg >= 1238 && deg < 1463 = SE | deg >= 1463 && deg < 1688 = SSE | deg >= 1688 && deg < 1913 = S | deg >= 1913 && deg < 2138 = SSW | deg >= 2138 && deg < 2363 = SW | deg >= 2363 && deg < 2588 = WSW | deg >= 2588 && deg < 2813 = W | deg >= 2813 && deg < 3038 = WNW | deg >= 3038 && deg < 3263 = NW | deg >= 3263 && deg < 3488 = NNW | otherwise = N getW :: Int -> Int getW dis | v >= 0 && v <= 2 = 0 | v >= 3 && v <= 15 = 1 | v >= 16 && v <= 33 = 2 | v >= 34 && v <= 54 = 3 | v >= 55 && v <= 79 = 4 | v >= 80 && v <= 107 = 5 | v >= 108 && v <= 138 = 6 | v >= 139 && v <= 171 = 7 | v >= 172 && v <= 207 = 8 | v >= 208 && v <= 244 = 9 | v >= 245 && v <= 284 = 10 | v >= 285 && v <= 326 = 11 | v >= 327 = 12 where v = round' . (* 10) $ fromIntegral dis / 60 round' :: Double -> Int round' x | d1 >= '5' = (+1) . read . takeWhile (/= '.') $ xStr | otherwise = read . takeWhile (/= '.') $ xStr where xStr = show x d1 = (\xs -> if null xs then '0' else head xs) . tail . dropWhile (/= '.') $ xStr
Submission Info
Submission Time | |
---|---|
Task | C - 風力観測 |
User | srtk |
Language | Haskell (GHC 7.4.1) |
Score | 100 |
Code Size | 1679 Byte |
Status | AC |
Exec Time | 95 ms |
Memory | 1596 KB |
Judge Result
Set Name | all | ||
---|---|---|---|
Score / Max Score | 100 / 100 | ||
Status |
|
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 | 95 ms | 1504 KB |
00_sample_02.txt | AC | 28 ms | 1496 KB |
00_sample_03.txt | AC | 27 ms | 1504 KB |
00_sample_04.txt | AC | 28 ms | 1496 KB |
00_sample_05.txt | AC | 28 ms | 1496 KB |
00_sample_06.txt | AC | 28 ms | 1500 KB |
00_sample_07.txt | AC | 27 ms | 1500 KB |
00_sample_08.txt | AC | 25 ms | 1504 KB |
test_01.txt | AC | 27 ms | 1504 KB |
test_02.txt | AC | 25 ms | 1416 KB |
test_03.txt | AC | 25 ms | 1496 KB |
test_04.txt | AC | 26 ms | 1496 KB |
test_05.txt | AC | 27 ms | 1500 KB |
test_06.txt | AC | 28 ms | 1500 KB |
test_07.txt | AC | 28 ms | 1556 KB |
test_08.txt | AC | 27 ms | 1568 KB |
test_09.txt | AC | 26 ms | 1508 KB |
test_10.txt | AC | 27 ms | 1500 KB |
test_11.txt | AC | 26 ms | 1508 KB |
test_12.txt | AC | 27 ms | 1504 KB |
test_13.txt | AC | 27 ms | 1500 KB |
test_14.txt | AC | 27 ms | 1496 KB |
test_15.txt | AC | 27 ms | 1500 KB |
test_16.txt | AC | 27 ms | 1500 KB |
test_17.txt | AC | 28 ms | 1576 KB |
test_18.txt | AC | 25 ms | 1500 KB |
test_19.txt | AC | 26 ms | 1496 KB |
test_20.txt | AC | 27 ms | 1500 KB |
test_21.txt | AC | 29 ms | 1496 KB |
test_22.txt | AC | 28 ms | 1492 KB |
test_23.txt | AC | 27 ms | 1496 KB |
test_24.txt | AC | 27 ms | 1572 KB |
test_25.txt | AC | 25 ms | 1120 KB |
test_26.txt | AC | 26 ms | 1568 KB |
test_27.txt | AC | 27 ms | 1496 KB |
test_28.txt | AC | 26 ms | 1504 KB |
test_29.txt | AC | 28 ms | 1500 KB |
test_30.txt | AC | 28 ms | 1508 KB |
test_31.txt | AC | 26 ms | 1568 KB |
test_32.txt | AC | 26 ms | 1520 KB |
test_33.txt | AC | 26 ms | 1500 KB |
test_34.txt | AC | 28 ms | 1500 KB |
test_35.txt | AC | 27 ms | 1500 KB |
test_36.txt | AC | 27 ms | 1568 KB |
test_37.txt | AC | 28 ms | 1504 KB |
test_38.txt | AC | 27 ms | 1596 KB |
test_39.txt | AC | 28 ms | 1500 KB |
test_40.txt | AC | 27 ms | 1504 KB |
test_41.txt | AC | 27 ms | 1504 KB |
test_42.txt | AC | 26 ms | 1500 KB |
test_43.txt | AC | 27 ms | 1504 KB |
test_44.txt | AC | 27 ms | 1500 KB |
test_45.txt | AC | 26 ms | 1500 KB |
test_46.txt | AC | 26 ms | 1568 KB |
test_47.txt | AC | 26 ms | 1500 KB |
test_48.txt | AC | 27 ms | 1496 KB |
test_49.txt | AC | 29 ms | 1496 KB |
test_50.txt | AC | 27 ms | 1500 KB |
test_51.txt | AC | 28 ms | 1500 KB |
test_52.txt | AC | 29 ms | 1504 KB |
test_53.txt | AC | 28 ms | 1492 KB |
test_54.txt | AC | 30 ms | 1500 KB |
test_55.txt | AC | 29 ms | 1496 KB |
test_56.txt | AC | 28 ms | 1408 KB |
test_57.txt | AC | 27 ms | 1492 KB |
test_58.txt | AC | 25 ms | 1500 KB |