結果

問題 No.3601 Queen Dist Sum with One Wall
コンテスト
ユーザー hiryuN
提出日時 2026-07-24 23:29:34
言語 PyPy3
(7.3.17)
コンパイル:
pypy3 -mpy_compile _filename_
実行:
pypy3 _filename_
結果
WA  
実行時間 -
コード長 1,303 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 1,825 ms
コンパイル使用メモリ 95,604 KB
実行使用メモリ 97,060 KB
最終ジャッジ日時 2026-07-24 23:29:53
合計ジャッジ時間 17,493 ms
ジャッジサーバーID
(参考情報)
judge2_0 / judge1_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other AC * 2 WA * 20
権限があれば一括ダウンロードができます

ソースコード

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
    if left<0:
        left=2-(1-left%2)
    lef=max(lef,1)
    return (min(b-1,lef)-left+2)//2
    
        
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