結果

問題 No.3507 RangeSum RangeUpdate RangeSqrt
コンテスト
ユーザー 👑 to-omer
提出日時 2026-04-17 22:18:51
言語 Rust
(1.94.0 + proconio + num + itertools)
コンパイル:
/usr/bin/rustc_custom
実行:
./target/release/main
結果
WA  
実行時間 -
コード長 24,194 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 3,195 ms
コンパイル使用メモリ 190,276 KB
実行使用メモリ 22,784 KB
最終ジャッジ日時 2026-04-17 22:20:56
合計ジャッジ時間 18,153 ms
ジャッジサーバーID
(参考情報)
judge2_0 / judge1_0
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample -- * 1
other WA * 11 TLE * 1 -- * 17
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

code!{
pub fn solve() {
    crate::prepare!();
    define_enum_scan! {
        enum Query: u8 {
            0 => RangeSum { l: usize, r: usize },
            1 => RangeUpdate { l: usize, r: usize, x: usize },
            2 => RangeIsqrt { l: usize, r: usize },
        }
    }
    sc!(n, q, a: [usize; n], queries: [Query; q]);
    let mut seg = LazySegmentTree::<X>::from_keys(a.iter().cloned());
    for query in queries {
        match query {
            Query::RangeSum { l, r } => {
                let ans = seg.fold(l..r).0;
                pp!(ans);
            }
            Query::RangeUpdate { l, r, x } => {
                seg.update(l..r, (Some(x), 0));
            }
            Query::RangeIsqrt { l, r } => {
                seg.update(l..r, (None, 1));
            }
        }
    }
}
struct X;
impl Magma for X {
    type T = (Option<usize>, usize);
    fn operate(x: &Self::T, y: &Self::T) -> Self::T {
        if let Some(y0) = y.0 {
            (Some(y0), y.1)
        } else {
            (x.0, x.1 + y.1)
        }
    }
}
impl Associative for X {}
impl Unital for X {
    fn unit() -> Self::T {
        (None, 0)
    }
}
impl MonoidAct for X {
    type Key = usize;
    type Act = (Option<usize>, usize);
    type ActMonoid = X;

    fn act(x: &Self::Key, a: &Self::Act) -> Self::Key {
        let mut x = if let Some(a0) = a.0 { a0 } else { *x };
        for _ in 0..a.1 {
            if x == 1 {
                break;
            }
            x = x.isqrt();
        }
        x
    }
}
impl LazyMapMonoid for X {
    type Key = usize;
    type Agg = (usize, usize, usize);
    type Act = (Option<usize>, usize);
    type AggMonoid = (
        AdditiveOperation<usize>,
        MinOperation<usize>,
        MaxOperation<usize>,
    );
    type ActMonoid = X;
    type KeyAct = X;

    fn single_agg(&key: &Self::Key) -> Self::Agg {
        (key, key, key)
    }

    fn act_agg(x: &Self::Agg, a: &Self::Act) -> Option<Self::Agg> {
        if x.1 == x.2 {
            let mut x = if let Some(a0) = a.0 { a0 } else { x.0 };
            for _ in 0..a.1 {
                if x == 1 {
                    break;
                }
                x = x.isqrt();
            }
            Some((x, x, x))
        } else {
            None
        }
    }
}
crate::main!();
}
fn main()->std::io::Result<()>{use std::{env::temp_dir,fs::File,io::Write,process::{exit,Command}};let e=temp_dir().join("bin025BE967");let mut b=Vec::with_capacity(B.len()*8/6);let mut x=0;let mut t=vec![64;256];for i in 0..64{t[b"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"[i]as usize]=i as u8;}for(i,c)in B.iter().map(|&c|t[c as usize]).filter(|&c|c<64).enumerate(){x=match i%4{0=>c<<2,1=>{b.push(x|c>>4);c<<4}2=>{b.push(x|c>>2);c<<6}_=>{b.push(x|c);0}}}Write::write_all(&mut File::create(&e)?,&b)?;#[cfg(unix)]std::fs::set_permissions(&e,std::os::unix::fs::PermissionsExt::from_mode(0o755))?;exit(Command::new(&e).status()?.code().unwrap())}#[macro_export]macro_rules!code{($($t:tt)*)=>{}}const B:&[u8]=b"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";
0