結果

問題 No.2071 Shift and OR
ユーザー magurofly
提出日時 2022-09-16 21:48:13
言語 Ruby
(3.4.1)
結果
TLE  
実行時間 -
コード長 354 bytes
コンパイル時間 261 ms
コンパイル使用メモリ 7,296 KB
実行使用メモリ 48,896 KB
最終ジャッジ日時 2024-12-21 19:04:12
合計ジャッジ時間 64,309 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 28 TLE * 9
権限があれば一括ダウンロードができます
コンパイルメッセージ
Syntax OK

ソースコード

diff #

N = gets.to_s.to_i
A = gets.to_s.split.map(&:to_i)

dp = [false] * 65536
dp[0] = true

A.each do |n|
    dp2 = [false] * 65536
    16.times do |i|
        (0 ... 65536).each do |m|
            dp2[m | n] |= dp[m]
        end
        n = n >> 1 | (n & 1) << 15
    end
    dp = dp2
end

ans = 0
(0 ... 65536).each do |i|
    ans = i if dp[i]
end

puts ans
0