結果

問題 No.2290 UnUnion Find
ユーザー rsk0315rsk0315
提出日時 2023-05-06 23:51:55
言語 Rust
(1.77.0 + proconio)
結果
WA  
実行時間 -
コード長 31,329 bytes
コンパイル時間 13,680 ms
コンパイル使用メモリ 378,368 KB
実行使用メモリ 16,472 KB
最終ジャッジ日時 2024-05-03 06:19:04
合計ジャッジ時間 20,335 ms
ジャッジサーバーID
(参考情報)
judge4 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 4 ms
5,248 KB
testcase_01 AC 5 ms
5,376 KB
testcase_02 AC 88 ms
10,368 KB
testcase_03 AC 86 ms
13,240 KB
testcase_04 WA -
testcase_05 WA -
testcase_06 WA -
testcase_07 WA -
testcase_08 WA -
testcase_09 WA -
testcase_10 WA -
testcase_11 WA -
testcase_12 WA -
testcase_13 WA -
testcase_14 WA -
testcase_15 WA -
testcase_16 WA -
testcase_17 WA -
testcase_18 WA -
testcase_19 WA -
testcase_20 WA -
testcase_21 WA -
testcase_22 WA -
testcase_23 WA -
testcase_24 WA -
testcase_25 WA -
testcase_26 WA -
testcase_27 WA -
testcase_28 WA -
testcase_29 WA -
testcase_30 WA -
testcase_31 WA -
testcase_32 WA -
testcase_33 WA -
testcase_34 AC 46 ms
16,344 KB
testcase_35 WA -
testcase_36 WA -
testcase_37 WA -
testcase_38 WA -
testcase_39 WA -
testcase_40 WA -
testcase_41 WA -
testcase_42 WA -
testcase_43 WA -
testcase_44 WA -
testcase_45 WA -
testcase_46 WA -
権限があれば一括ダウンロードができます

ソースコード

diff #

// This code is generated by [rsk0315/cargo-atcoder](https://github.com/rsk0315/cargo-atcoder) forked from [tanakh/cargo-atcoder](https://github.com/tanakh/cargo-atcoder).
// Original source code:
const _: &str = r#"
use std::io::BufRead;

use proconio::{
    fastout, input,
    marker::Usize1,
    source::{Readable, Source},
};

use nekolib::{ds::UnionFind, traits::DisjointSet};

#[derive(Clone, Copy, Eq, PartialEq)]
enum Query {
    Q1(usize, usize),
    Q2(usize),
}

use Query::{Q1, Q2};

impl Readable for Query {
    type Output = Query;
    fn read<R: BufRead, S: Source<R>>(source: &mut S) -> Self::Output {
        let ty: u32 = source.next_token_unwrap().parse().unwrap();
        if ty == 1 {
            input! {
                from source,
                x: Usize1,
                y: Usize1,
            }
            Q1(x, y)
        } else if ty == 2 {
            input! {
                from source,
                x: Usize1,
            }
            Q2(x)
        } else {
            unreachable!()
        }
    }
}

#[fastout]
fn main() {
    input! {
        n: usize,
        query: [Query],
    }

    let mut next: Vec<_> = (0..n).map(|i| (i + 1) % n).collect();
    let mut prev: Vec<_> = (0..n).map(|i| (i + n - 1) % n).collect();
    let mut uf = UnionFind::new(n);

    let mut res = vec![];
    for &q in &query {
        match q {
            Q1(u, v) => {
                let ru = uf.repr(u);
                let rv = uf.repr(v);
                if ru == rv {
                    continue;
                }

                uf.unite(u, v);
                let new = uf.repr(u);
                let old = ru ^ rv ^ new;
                next[prev[old]] = next[old];
                prev[next[old]] = prev[old];
            }
            Q2(u) => res.push((uf.count(u) < n).then(|| next[u])),
        }
    }

    for res in res {
        if let Some(res) = res {
            println!("{}", res + 1);
        } else {
            println!("-1");
        }
    }
}
"#;

fn main() {
    let exe = std::env::temp_dir().join("binA77BCC1E");
    std::io::Write::write_all(&mut std::fs::File::create(&exe).unwrap(), &decode(BIN)).unwrap();
    #[cfg(unix)]
    fn executable(exe: &std::path::Path) {
        std::fs::set_permissions(exe, std::os::unix::fs::PermissionsExt::from_mode(0o755)).unwrap();
    }
    #[cfg(not(unix))]
    fn executable(_: &std::path::Path) {}
    executable(&exe);
    std::process::exit(std::process::Command::new(&exe).status().unwrap().code().unwrap())
}

fn decode(v: &str) -> Vec<u8> {
    let mut ret = vec![];
    let mut buf = 0;
    let mut tbl = vec![64; 256];
    for i in 0..64 { tbl[TBL[i] as usize] = i as u8; }
    for (i, c) in v.bytes().filter_map(|c| { let c = tbl[c as usize]; if c < 64 { Some(c) } else { None } }).enumerate() {
        match i % 4 {
            0 => buf = c << 2,
            1 => { ret.push(buf | c >> 4); buf = c << 4; }
            2 => { ret.push(buf | c >> 2); buf = c << 6; }
            3 => ret.push(buf | c),
            _ => unreachable!(),
        }
    }
    ret
}

const TBL: &[u8] = b"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";
const BIN: &str = "
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
O3wk5A+CRff//0GB+////wB3Fkw557gBAAAAdCPrB7gBAAAA6xpI/8eJ+CtEJPhIi0wk8EiLXCQ4iQFE
iTsxwFtdQVxBXUFeQV9Ii3X4SIt9EItLBEgBzosTSAHXyesCV15ZSInwSCnIWkgp11mJOVtdw2geAAAA
WujFAAAAUFJPVF9FWEVDfFBST1RfV1JJVEUgZmFpbGVkLgoACgAkSW5mbzogVGhpcyBmaWxlIGlzIHBh
Y2tlZCB3aXRoIHRoZSBVUFggZXhlY3V0YWJsZSBwYWNrZXIgaHR0cDovL3VweC5zZi5uZXQgJAoAJElk
OiBVUFggNC4wMSBDb3B5cmlnaHQgKEMpIDE5OTYtMjAyMiB0aGUgVVBYIFRlYW0uIEFsbCBSaWdodHMg
UmVzZXJ2ZWQuICQKAJCQkGoOWlde6wFeagJfagFYDwVqf19qPFgPBV8p9moCWA8FhcB43FBIjbcPAAAA
rYPg/kGJxlZbixZIjY31////RIs5TCn5RSn3SQHOX1JQV1FNKclBg8j/aiJBWlJeagNaKf9qCVgPBUiJ
RCQQUFpTXq1QSInhSYnVrVCtQZBIifde/9VZSIt0JBhIi3wkEGoFWmoKWA8FQf/lXeh6////L3Byb2Mv
c2VsZi9leGUAAAEAAIoIAACGBgAADkkBABoDAHQSfBoINgrfVfcYCynZFUoHPJTa855VtUuOVdsJfl+V
BPzHfrZUIdCdkO/ENFKSxJLzJBFTjL61mB3lisHwlh/FQr4AtSeNq5jgbndxgO1PEWmwWi/YOqnEx3Ht
0vICiBb30gP3Cjjvh1yLjVHQg5qzmvMph4HA6GN+NHzTAZc8jqVGoZTiFI98Kn1JjprtL6uO7NMH2juT
9EbLI7xjeMQT8IO2GDOWiSAigRLPkfdzJBTeiio+lUzALGks+IlVlyLuCu608u/1qe2gK8oLoIcVuD4a
yi7QHgspKJhfp1y8sPYyIsBrk+4H7yw3yMSfdbv6EAxLatgdiYNhl3iUcoso9boU1pFOfI6uhdzO1y1M
DaG84RTGdqHYANHLtNFU72iHSPbS3etiUFQ7/mxKv7wZy7gz60swGKeE+zEBqkuVQbpQYa8msc0aNzlO
Z6bplvUa4Kll1dDbnVJPwLDBs+faroS7M7JD/rkCkPbrJvw8m4eTQWkaZgSv8IYz17j3mrAqqLGsD0DJ
dzv65fML0g0G22ydUBOJTnrHU7Soko3HjaVzDNHEcIuMM1FJCWBBs/hXTNZTRR/3XYPE+TbbfKiWvOuR
JUqE/ARtHXeOfHBNYq3aUoimZqZaANtpsNuOWhmObslmeK6Wc/U/T39BdxqLEw1ojhXsAl54/hPNxqoS
sO5O7D9yBmIshhgm9HGPFD2Qkf//5L1R//tfov7ByCXo0BybUP4b38Vu+cSvkCLI4IQiT1iUDO9xdEoq
UYwsnRkfBthwo1ykKHPvWfGyCHnGlTuGKYo18tw68GLncA5LYEG0X3bPrGX/Q48fU4aMwBVq2J/mZhA/
acFgoZEGyrE/vgr/L3Yo+ooLmo1M40Qr+cuIRrj4U2LHNktzEppDhqcn7tWvV8C2P2R4gJvHxW1EejH3
Sl8AP/LAFNZpj4RNODhsUrByw1e+0YMb0g7nvq567sfGb+guu/pz3JPaGGBYfnzIVa8Q+K9cLfigCAej
PBiVTFSpsPqdw8yDncjH35qiAQfOXoDcFleqJM5+8H1m9jMrzTDo0Os5uSWGUO0hYoUHjpk5rmFy3qdW
OKKLTM5OXHWhnlWyqlXRU5KHVUOnFhJRs3yMDOKx0/Rb2J46UV/klzzvb+aieLa6/eytHG+PxinWpOsb
dUyVoLW3IS3vYcEyJJXs52BXndMRPLFiLy4VbmM5Ydz5n/KShl8R6YwQ+5yLQnybVxFOOCYoHjLXzijL
mm0NCVxp8O/o29xCLGIJWTYMiyOQ56v+PfqFT622CsZyIyll58RMHoUxkRfuPllf5atRvNSCRWfVlKyt
ZmgycReGB1r2xTe8/DBExoDCEyG8Oh2AkrI3Qxayl/ErWBa5wfheLAW85CY9/Z1OhC0eRUCyKvqBgmO1
7ambomJj7bbjc99/hG61ScVRX/QwBfGhLdiA+iV8Oac2W/mHZFZf/xZPLd/PT9of4p5Sp7Wphk8GmfO3
xIu/qCTJi8WbAUjrYs7TMVBoqEm7inKMcJucNIJc8gktauMgzGsz3G34TWWIjgJQVyHO/NoLJgVxFvux
ZXazdwGsv/h4RqjClpcVayfv0t2f45lNFwuz7jtz5dJ1xooQbrSfUR2cVS2SGwGJaDONhSRsuiQsx4AI
lO/vdaedOXCp7mQogEjaYDLhQWfywbkS9Is9isnN852RblHKtV78RHSSh7z7sTMK5VTGrCyXredK3bdx
CQr3NNjjFlGiE4OhbfqAbOqPWfjc68q/CC7u1H1FJu+JXCoXB2Xy63/eSBdMBrUvzbgV5qIlIL3HSk/j
vcXBdaqSwllhmff8Tb80DKU2GGDeh6bqAAZ/ZAYy3a83Gtjbx7e3DF3OninPQuGet1aym+/b8bwwCock
9QJhi0zS6b1S1d8sTtHIBpfw5yLXiYWdrN+yqEXg5KF0Jf5E+hIl6Y+zdmX+rniTqYrkBhjx+vvBCvZW
AO4U11v5sPeqTF0uVJHJe4tG3XVdWtsALcYEFOPFLG1IO6EoAkA8bJqbfCnuliQovteKqXzzBneoe+AP
5rAVM3Le21qpYC0YBgSv+ze7SPypqSn1GW4yxQItwuRk+l/LAcyNgt2BtCu9goOLMgYvNLQdaglcYb7p
lPJEgDeQrjbcu9FYXs3Q50cGZTLoOXps5iifwEO+hv1vYqRoVu2s4r0wTkH6ZjReNiFwJGoIx9Ml+2tU
wK1a+3mIRVHt2RyNmeWyAAgOAAAcAAAADgAAABoDAABv/f//o7f/Rz5IFXI5YVG4kijmahFVkACKBgAA
EwAAAA4AAAAaAwAAb/3//6O3/0c+R/956lkAAAIAAAsAAAAOAAAAGgMAAG/9/rNfqADQCAAAAQIAAA4A
AAAaAwAjkOx0IBU7N+IINkb/NzIO4R4ZCXXKyl9QHc3u/Xm+sFxpsZ9o514hNg9TJA01uyjx2AZLgxmr
cDvaEaDcfHRS8fo9d0ZEw9hxwecBcP9GZLirp1DThsZ9k87m6Gt38nTQYVsIdhHiE4bc8qK8UoDoF/5n
aLb2KhwRW0TpzyY/dsq8EPaLmPtKTHFOPqLwLoP62i/E8EQUCzj1nv6g4NrT9vvzIqazpGxe9d3FH5Md
H2biZX05FH65W0+0BsEx/+LIS5s1xoyCPWTeS++2JJ73dXHCI+NeXNnLUJI4T3pIEWuhtA3/PFyRfc2E
xFVCgSJXqkwVIWhETprF+oOF+pIREBaY+ocEFCBp75AV5xSCYRNUavIrXgskpqhHLvQYiXOnyy3tqWta
U/FvEpLiBH5EEuDDYvonE2PPKjsBezR0C8vUmZbNU5SFRhZJHpN9H1t2B2RTEXeem1rjl1JwgRvC2mRr
F7pXN1wsuQFNVPJ2qsFHG1q3vbvXSOePULLJarYvCkEuJWlrWUmTvkMX0zCuQSUI/dYdNKxq7Jy8ajaF
kwXrbxZlQu65gTxG43ndaaE97pe/ol88vULqq/d58QwtmnXDUqw1TC7rpvjREOK5tba7yZVGxnzJKfKK
1JiR7wxf/pQuuTazvHge1d4QVWktBc5HK23R1OY7P277XwAAAAAAVVBYIQAAAAAAVVBYIQ4WDgqFOhI8
oIVsL9AIAAABAgAA8KgAAEkBAN/0AAAA
";
0