結果

問題 No.3235 巡回減算
ユーザー tokugh
提出日時 2025-08-15 22:40:20
言語 Julia
(2.11.2)
結果
AC  
実行時間 946 ms / 10,000 ms
コード長 717 bytes
コンパイル時間 121 ms
コンパイル使用メモリ 7,716 KB
実行使用メモリ 227,832 KB
最終ジャッジ日時 2025-08-15 22:40:49
合計ジャッジ時間 24,579 ms
ジャッジサーバーID
(参考情報)
judge6 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 30
権限があれば一括ダウンロードができます

ソースコード

diff #

toI(s=readline()) = parse(Int,s)
toVI(s=readline()) = parse.(Int,split(s))
rep(f,n) = [f() for _ in 1:n]
@enum YN Yes=1 No=0

function main()
    a = Vector{Vector{Int}}(undef,8)
    for i in 1:8
        a[i] = map(toI,collect(readline()))
    end
    solve(a) |> YN |> println
end

function solve(a)
    b = zeros(Int,8)
    for i in 0:8^7-1
        for j in 1:8
            b[j] = -a[1][j]
        end
        for k in 2:8
            shift = (i >> 3(k-2)) & 7
            for j in 1:8
                j′ = mod1(j+shift,8)
                b[j] += a[k][j′]
            end
        end
        all(iszero,b) && return true
    end
    return false
end

@static if endswith(@__FILE__, PROGRAM_FILE)
    main()
end
0