結果

問題 No.755 Zero-Sum Rectangle
ユーザー mkawa2mkawa2
提出日時 2020-05-26 01:56:14
言語 PyPy3
(7.3.15)
結果
TLE  
(最新)
AC  
(最初)
実行時間 -
コード長 1,486 bytes
コンパイル時間 160 ms
コンパイル使用メモリ 82,008 KB
実行使用メモリ 76,800 KB
最終ジャッジ日時 2024-10-13 02:25:28
合計ジャッジ時間 16,991 ms
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 33 ms
52,896 KB
testcase_01 TLE -
testcase_02 AC 1,443 ms
76,800 KB
testcase_03 AC 1,414 ms
76,688 KB
testcase_04 AC 1,386 ms
76,752 KB
testcase_05 AC 1,374 ms
76,520 KB
testcase_06 AC 1,367 ms
76,708 KB
testcase_07 AC 1,356 ms
76,500 KB
testcase_08 AC 1,353 ms
76,008 KB
testcase_09 AC 1,354 ms
76,328 KB
testcase_10 AC 1,353 ms
76,312 KB
testcase_11 AC 42 ms
60,916 KB
evil_1 AC 1,431 ms
76,728 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

import sys

def II(): return int(sys.stdin.readline())
def MI(): return map(int, sys.stdin.readline().split())
def LI(): return list(map(int, sys.stdin.readline().split()))
def SI(): return sys.stdin.readline()[:-1]
def LLI(rows_number): return [LI() for _ in range(rows_number)]
def LLI1(rows_number): return [LI1() for _ in range(rows_number)]
int1 = lambda x: int(x) - 1
def MI1(): return map(int1, sys.stdin.readline().split())
def LI1(): return list(map(int1, sys.stdin.readline().split()))
p2D = lambda x: print(*x, sep="\n")
dij = [(1, 0), (0, 1), (-1, 0), (0, -1)]

def main():
    n,m=MI()
    aa=LLI(m)
    bb=[[0]*(m+1) for _ in range(m+1)]
    for i,row in enumerate(aa):
        for j,a in enumerate(row):
            bb[i+1][j+1]=bb[i+1][j]+a
    for j in range(m):
        for i in range(m):
            bb[i+1][j+1]+=bb[i][j+1]

    cc=[[0]*(m+1) for _ in range(m+1)]
    for si in range(m):
        for sj in range(m):
            for gi in range(si+1,m+1):
                for gj in range(sj+1,m+1):
                    if bb[si][sj]+bb[gi][gj]-bb[si][gj]-bb[gi][sj]==0:
                        cc[si][sj]+=1
                        cc[gi][gj]+=1
                        cc[si][gj]-=1
                        cc[gi][sj]-=1

    for i in range(m+1):
        for j in range(m):
            cc[i][j+1]+=cc[i][j]
    for j in range(m+1):
        for i in range(m):
            cc[i+1][j]+=cc[i][j]

    for _ in range(n):
        i,j=MI1()
        print(cc[i][j])

main()
0