結果
| 問題 |
No.2535 多重同値
|
| コンテスト | |
| ユーザー |
steinn
|
| 提出日時 | 2023-11-10 22:15:06 |
| 言語 | Julia (2.11.2) |
| 結果 |
AC
|
| 実行時間 | 329 ms / 2,000 ms |
| コード長 | 611 bytes |
| コンパイル時間 | 348 ms |
| コンパイル使用メモリ | 7,076 KB |
| 実行使用メモリ | 251,448 KB |
| 最終ジャッジ日時 | 2024-10-01 17:39:10 |
| 合計ジャッジ時間 | 7,674 ms |
|
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 20 |
ソースコード
parseInts() = parse.(Int64, readline()::String |> split)::Vector{Int64}
parseInt() = parse(Int64, readline()::String)::Int64
function eq(a, b)
# 1=true, 2=false
return (a == b ? 1 : 2)
end
function main()
n = parseInt()
p = fill(0, n)
for i = 1:n
p[i] = (readline() == "Yes" ? 1 : 2)
end
# qの2個目の添字は 1=true, 2=false
q = fill(0, n, 2)
q[1, 1] = 1
q[1, 2] = 2
for i = 1:n-1
q[i+1, 1] = q[i, eq(p[i], 1)]
q[i+1, 2] = q[i, eq(p[i], 2)]
end
for i = 1:n
(q[i, p[i]] == 1 ? "Yes" : "No") |> println
end
end
main()
steinn