結果

問題 No.3601 Queen Dist Sum with One Wall
コンテスト
ユーザー hiryuN
提出日時 2026-07-25 00:06:05
言語 PyPy3
(7.3.17)
コンパイル:
pypy3 -mpy_compile _filename_
実行:
pypy3 _filename_
結果
AC  
実行時間 982 ms / 2,000 ms
+ 447µs
コード長 1,593 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 256 ms
コンパイル使用メモリ 96,104 KB
実行使用メモリ 97,044 KB
最終ジャッジ日時 2026-07-25 00:06:29
合計ジャッジ時間 17,770 ms
ジャッジサーバーID
(参考情報)
judge1_0 / judge3_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 22
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

t=int(input())
def V(h,w,x,y,a,b):
    Ans=[]
    for i in range(h):
        Ans.append([9]*w)
    Ans[x-1][y-1]=0
    Ans[a-1][b-1]=8
    for I in Ans:
        print(*I)
def solve1(h,w,x,y,a,b):
    ans=h+w-2
    ans+=min(x-1,y-1)+min(h-x,y-1)+min(x-1,w-y)+min(h-x,w-y)
    return ans
def R(h,w,x,y,a,b):
    if x==a or y==b:
        return True
    return False
def B(h,w,x,y,a,b):
    if abs(x-a)==abs(y-b):
        return True
    return False
def D(h,w,x,y,a,b):
    ans=10**18
    if x<a:
        ans=min(ans,h-a+1)
    if y<b:
        ans=min(ans,w-b+1)
    if a<x:
        ans=min(ans,a)
    if b<y:
        ans=min(ans,b)
    return ans
def F(h,w,x,y,a,b):
    div=max(h-x,x-1)
    left=y-div*2
    lef=y-div
    
    # (1) i < left の個数
    first = max(0, min(left, b) - 1)

    # (2) left <= i < lef かつ i%2 != left%2 の個数
    lo = max(1, left)
    hi = min(lef, b) - 1
    if lo > hi:
        second = 0
    else:
        r = 1 - left % 2          # left と逆のパリティ
        second = (hi - r)//2 - (lo - 1 - r)//2   # [lo,hi] 内で mod2==r の個数

    return first + second
    
        
for i in range(t):
    h,w,x,y,a,b=map(int,input().split())
    #V(h,w,x,y,a,b)
    if x!=a:
        h,w=w,h
        x,y=y,x
        a,b=b,a
    if y<b:
        a=h+1-a
        x=h+1-x
        b=w+1-b
        y=w+1-y
    A1=solve1(h,w,x,y,a,b)
    if not (R(h,w,x,y,a,b) or B(h,w,x,y,a,b)):
        print(h*w*2-4-A1)
    elif B(h,w,x,y,a,b):
        print(h*w*2-4-A1+D(h,w,x,y,a,b))
    else:
        print(h*w*2-4-A1+D(h,w,x,y,a,b)+F(h,w,x,y,a,b))
        
        
0