結果

問題 No.3680 セグメント釣り
コンテスト
ユーザー cacampu
提出日時 2026-09-05 14:02:25
言語 Rust
(1.97.1 + proconio + num + itertools)
コンパイル:
/usr/bin/rustc_custom
実行:
./target/release/main
結果
TLE  
実行時間 -
コード長 663 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 4,861 ms
コンパイル使用メモリ 195,060 KB
実行使用メモリ 7,716 KB
最終ジャッジ日時 2026-09-05 14:03:08
合計ジャッジ時間 15,556 ms
ジャッジサーバーID
(参考情報)
judge2_0 / judge5_1
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample TLE * 1
other -- * 13
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

use proconio::{fastout, input};

#[fastout]
fn main() {
    input! {
        t: usize,
        cases: [(usize,usize,usize,usize); t],
    }
    let idx = |x: usize, y: usize| (y, x / (1 << (y.min(32))));
    for (sx, sy, tx, ty) in cases {
        let (mut s, mut t) = (idx(sx, sy), idx(tx, ty));
        let mut ans = 0;
        while s != t {
            if s.1 == 0 && t.1 == 0 {
                ans += s.0.abs_diff(t.0);
                break;
            } else if s < t {
                s = (s.0 + 1, s.1 / 2);
            } else {
                t = (t.0 + 1, t.1 / 2);
            }
            ans += 1;
        }
        println!("{}", ans);
    }
}

0