結果
問題 | No.440 2次元チワワ問題 |
ユーザー |
![]() |
提出日時 | 2025-01-15 03:12:40 |
言語 | PyPy3 (7.3.15) |
結果 |
MLE
|
実行時間 | - |
コード長 | 1,592 bytes |
コンパイル時間 | 1,419 ms |
コンパイル使用メモリ | 82,120 KB |
実行使用メモリ | 844,404 KB |
最終ジャッジ日時 | 2025-01-15 03:13:02 |
合計ジャッジ時間 | 18,196 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 14 MLE * 12 |
ソースコード
import sysinput = sys.stdin.readlineH, W = map(int, input().split())MAP = [input().strip() for _ in range(H)]# SCOREとSCORE2を一次元配列に変更SCORE = [0] * (H * W * W)SCORE2 = [0] * (W * H * H)def calc(h, l):c = 0cw = 0now = 0for i in range(l, W):if MAP[h][i] == "c":c += 1else:now += cwcw += cSCORE[h * W * W + l * W + i] += nowdef calc2(h, r):c = 0cw = 0now = 0for i in range(r, -1, -1):if MAP[h][i] == "c":c += 1else:now += cwcw += cSCORE[h * W * W + i * W + r] += nowdef calc3(w, l):c = 0cw = 0now = 0for i in range(l, H):if MAP[i][w] == "c":c += 1else:now += cwcw += cSCORE2[w * H * H + l * H + i] += nowdef calc4(w, r):c = 0cw = 0now = 0for i in range(r, -1, -1):if MAP[i][w] == "c":c += 1else:now += cwcw += cSCORE2[w * H * H + i * H + r] += nowfor i in range(H):for j in range(W):calc(i, j)calc2(i, j)for i in range(W):for j in range(H):calc3(i, j)calc4(i, j)Q = int(input())for _ in range(Q):a, b, c, d = map(int, input().split())a -= 1b -= 1c -= 1d -= 1ANS = 0for i in range(a, c + 1):ANS += SCORE[i * W * W + b * W + d]for i in range(b, d + 1):ANS += SCORE2[i * H * H + a * H + c]print(ANS)