結果
| 問題 |
No.86 TVザッピング(2)
|
| コンテスト | |
| ユーザー |
6soukiti29
|
| 提出日時 | 2017-08-11 08:02:23 |
| 言語 | Nim (2.2.0) |
| 結果 |
CE
(最新)
AC
(最初)
|
| 実行時間 | - |
| コード長 | 1,506 bytes |
| コンパイル時間 | 923 ms |
| コンパイル使用メモリ | 64,472 KB |
| 最終ジャッジ日時 | 2025-06-20 13:59:57 |
| 合計ジャッジ時間 | 1,219 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
コンパイルエラー時のメッセージ・ソースコードは、提出者また管理者しか表示できないようにしております。(リジャッジ後のコンパイルエラーは公開されます)
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
ただし、clay言語の場合は開発者のデバッグのため、公開されます。
コンパイルメッセージ
/home/judge/data/code/Main.nim(3, 34) Error: tuple expected for tuple unpacking, but got 'seq[int]'
ソースコード
import sequtils,strutils
var M,N : int
(M, N) = stdin.readline.split.map(parseInt)
var
hyou = newSeq[string](M + 2,)
D = [[1,0],[0,-1],[-1,0],[0,1]]
cnt : int
ans : bool
cntd : int
flag : array[102,array[102,int]]
hyou[0] = repeat('#',M + 2)
hyou[M + 1] = repeat('#',M + 2)
for n in 1..M:
hyou[n] = '#' & stdin.readline & '#'
proc tansaku(i,j : int):bool=
for d2 in 0..3:
var
x = i
y = j
cntf = 0
cntf2 = 0
nx,ny : int
cnt += 1
var d = d2
while cntf <= cntd:
nx = x + D[d][0]
ny = y + D[d][1]
if nx == i and ny == j and cntf == cntd - 1:
return true
elif hyou[ny][nx] == '.' and flag[ny][nx] < cnt:
flag[ny][nx] = cnt
cntf += 1
x = nx
y = ny
cntf2 = 0
elif cntf2 == 0:
cntf2 += 1
d = (d + 1) mod 4
else:
break
return false
for x in 1..N:
for y in 1..M:
if hyou[y][x] == '.':
cntd += 1
block tansaku:
if cntd > 4 * (M + N):
break tansaku
for x in 1..N:
for y in 1..M:
if hyou[y][x] == '.':
cnt += 10
if tansaku(x,y):
ans = true
break tansaku
if ans:
echo "YES"
else:
echo "NO"
6soukiti29