結果

問題 No.432 占い(Easy)
ユーザー taktak
提出日時 2019-06-29 05:59:30
言語 F#
(F# 4.0)
結果
AC  
実行時間 176 ms / 2,000 ms
コード長 917 bytes
コンパイル時間 14,047 ms
コンパイル使用メモリ 187,880 KB
実行使用メモリ 53,632 KB
最終ジャッジ日時 2024-07-02 05:23:03
合計ジャッジ時間 17,188 ms
ジャッジサーバーID
(参考情報)
judge3 / judge4
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 63 ms
29,824 KB
testcase_01 AC 62 ms
29,952 KB
testcase_02 AC 65 ms
29,696 KB
testcase_03 AC 65 ms
29,952 KB
testcase_04 AC 64 ms
30,208 KB
testcase_05 AC 64 ms
29,944 KB
testcase_06 AC 64 ms
29,688 KB
testcase_07 AC 65 ms
30,208 KB
testcase_08 AC 63 ms
29,676 KB
testcase_09 AC 68 ms
30,072 KB
testcase_10 AC 66 ms
30,336 KB
testcase_11 AC 81 ms
36,728 KB
testcase_12 AC 175 ms
53,248 KB
testcase_13 AC 176 ms
53,632 KB
testcase_14 AC 79 ms
36,352 KB
testcase_15 AC 65 ms
29,568 KB
testcase_16 AC 64 ms
29,920 KB
testcase_17 AC 162 ms
53,344 KB
testcase_18 AC 128 ms
53,120 KB
testcase_19 AC 110 ms
51,840 KB
testcase_20 AC 86 ms
39,168 KB
testcase_21 AC 89 ms
41,064 KB
testcase_22 AC 66 ms
30,464 KB
testcase_23 AC 65 ms
30,208 KB
testcase_24 AC 69 ms
29,952 KB
testcase_25 AC 66 ms
29,792 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
  復元対象のプロジェクトを決定しています...
  /home/judge/data/code/main.fsproj を復元しました (403 ms)。
MSBuild のバージョン 17.9.6+a4ecab324 (.NET)
  main -> /home/judge/data/code/bin/Release/net8.0/main.dll
  main -> /home/judge/data/code/bin/Release/net8.0/publish/

ソースコード

diff #

module Yuki

open System

let solve ss =
    let str2Lis (str : string) =
        str.ToCharArray()
        |> Array.map (string >> int)
        |> Array.toList

    let num2Lis n =        
        let rec f acc x =
            if x >= 10 then 
                f ((x % 10) :: acc ) (x / 10)
            else
                x :: acc
        f [] n

    let horoscope (str : string) =
        let rec f =
            function
            | [] -> failwith ""
            | x :: [] -> x
            | xs ->
                let ns =
                    xs
                    |> List.pairwise
                    |> List.map ((fun (a, b) -> a + b) >> num2Lis >> List.sum)
                f ns                        
        let ns = str2Lis str
        f ns    

    ss
    |> List.map horoscope

let T = Console.ReadLine() |> int
let S = List.init T (fun _ -> Console.ReadLine())

solve S
|> List.iter Console.WriteLine
0