結果
| 問題 | No.3724 Domination |
| コンテスト | |
| ユーザー |
tomerun
|
| 提出日時 | 2026-09-19 13:58:55 |
| 言語 | Crystal (1.21.0 + ACL) |
| 結果 |
WA
不安定
|
| 実行時間 | - |
| コード長 | 744 bytes |
| 記録 | |
| コンパイル時間 | 11,099 ms |
| コンパイル使用メモリ | 328,800 KB |
| 実行使用メモリ | 11,648 KB |
| 最終ジャッジ日時 | 2026-09-19 13:59:21 |
| 合計ジャッジ時間 | 24,027 ms |
|
ジャッジサーバーID (参考情報) |
judge7_0 / judge3_0 |
(要ログイン)
| サブタスク | 配点 | 結果 |
|---|---|---|
| 部分点 | 20 % | AC * 7 WA * 1 |
| 満点 | 80 % | AC * 50 WA * 2 |
| 合計 | 2.5 * 0% = 0 点 |
ソースコード
RND = Random.new(2)
read_line.to_i.times do
solve()
end
def solve
n = read_line.to_i
r = read_line.split.map(&.to_i)
c = read_line.split.map(&.to_i)
if n == 2
puts -1
return
end
a = Array.new(n) { |i| Array.new(n, r[i]) }
cnt = Array.new(n, 0)
10.times do
n.times { |i| a[i].fill(r[i]) }
cnt.fill(0)
cands = [] of Int32
n.times do |x|
cands.clear
n.times do |y|
if a[y][x] != c[x] && cnt[y] + 1 < (n + 1) // 2
cands << y
end
end
break if cands.empty?
y = cands[RND.rand(cands.size)]
a[y][x] = c[x]
cnt[y] += 1
end
break if cnt.sum == n
end
if cnt.sum == n
a.each { |r| puts r.join(" ") }
else
puts -1
end
end
tomerun