結果

問題 No.3680 セグメント釣り
コンテスト
ユーザー titia
提出日時 2026-10-07 02:29:41
言語 PyPy3
(7.3.23 + ACL)
コンパイル:
pypy3 -mpy_compile _filename_
実行:
pypy3 _filename_
結果
TLE  
実行時間 -
コード長 612 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 910 ms
コンパイル使用メモリ 81,468 KB
実行使用メモリ 82,780 KB
最終ジャッジ日時 2026-10-07 02:29:53
合計ジャッジ時間 7,337 ms
ジャッジサーバーID
(参考情報)
judge2_0 / judge1_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 1
other TLE * 1 -- * 12
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

import sys
input = sys.stdin.readline

def calc(sx,sy):
    if sy>=70:
        haba=10**20
    else:
        haba=min(1<<sy,10**20)
        
    left=sx//haba*haba
    right=left+haba

    return haba,left,right

    

T=int(input())

for tests in range(T):
    sx,sy,tx,ty=list(map(int,input().split()))

    ANS=0

    if ty>sy:
        ANS+=ty-sy
        sy=ty


    plus=1<<63

    for i in range(10**9):
        haba,left,right=calc(sx,sy+i)
        haba2,left2,right2=calc(tx,ty)

        plus=min(plus,i*2+(left2-left)//haba)

        if left<=left2<=right<=right2:
            break

    print(ANS+plus)
0