結果
問題 |
No.1034 テスターのふっぴーさん
|
ユーザー |
![]() |
提出日時 | 2025-03-31 17:26:02 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 40 ms / 2,000 ms |
コード長 | 1,034 bytes |
コンパイル時間 | 194 ms |
コンパイル使用メモリ | 82,064 KB |
実行使用メモリ | 54,644 KB |
最終ジャッジ日時 | 2025-03-31 17:27:27 |
合計ジャッジ時間 | 2,589 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 30 |
ソースコード
def compute_time(N, I, J): k = min(I, J, (N-1)-I, (N-1)-J) sum_outer = 4 * k * (N - k) L = N - 2 * k if L == 0: return sum_outer # This case should not occur for valid I, J # Check right edge (i == k) if I == k and J >= k and J <= (N-1 - k): offset = J - k return sum_outer + offset # Check bottom edge (j == N-1 -k) elif J == (N-1 - k) and I >= (k + 1) and I <= (N-1 - k): offset = I - (k + 1) return sum_outer + L + offset # Check left edge (i == N-1 -k) elif I == (N-1 - k) and J <= (N-1 - k -1) and J >= k: offset = (N-1 - k - 1) - J return sum_outer + L + (L - 1) + offset # Check top edge (j == k) elif J == k and I >= (k + 1) and I <= (N-1 - k -1): offset = (N-1 - k - 1) - I return sum_outer + L + (L -1) * 2 + offset else: return -1 # Should not reach here if inputs are valid Q = int(input()) for _ in range(Q): N, I, J = map(int, input().split()) print(compute_time(N, I, J))