| Task: | Xor sum |
| Sender: | Giaco |
| Submission time: | 2025-09-22 17:22:48 +0300 |
| Language: | Rust (2021) |
| Status: | READY |
| Result: | ACCEPTED |
| test | verdict | time | |
|---|---|---|---|
| #1 | ACCEPTED | 0.00 s | details |
| #2 | ACCEPTED | 0.31 s | details |
Compiler report
warning: unused imports: `max`, `min`
--> input/code.rs:1:16
|
1 | use std::cmp::{max, min};
| ^^^ ^^^
|
= note: `#[warn(unused_imports)]` on by default
warning: unused imports: `HashMap`, `HashSet`
--> input/code.rs:2:24
|
2 | use std::collections::{HashMap, HashSet};
| ^^^^^^^ ^^^^^^^
warning: variable does not need to be mutable
--> input/code.rs:42:21
|
42 | let (mut s, mut e): (usize, usize) = (input!(it), input!(it));
| ----^
| |
| help: remove this `mut`
|
= note: `#[warn(unused_mut)]` on by default
warning: 3 warnings emittedCode
use std::cmp::{max, min};
use std::collections::{HashMap, HashSet};
use std::io::{self, Read};
macro_rules! input {
($it: expr) => {
$it.next().unwrap().parse().unwrap()
};
($it: expr, $T: ty) => {
$it.next().unwrap().parse::<$T>().unwrap()
};
}
/*
mod classes;
mod homework;
fn main() {
// println!("{}", "-".repeat(20));
classes::c07::task1();
// homework::hw2::task1();
// println!("{}", "-".repeat(20));
}
// */
fn main() {
let mut buf = String::new();
io::stdin().read_to_string(&mut buf).unwrap();
let mut it = buf.split_whitespace();
let (n, mut q): (usize, usize) = (input!(it), input!(it));
let v: Vec<usize> = (0..n).map(|_| input!(it)).collect();
// prefix sum
let mut ps: Vec<usize> = vec![0; n+1];
for i in 0..n {
ps[i+1]=v[i]^ps[i];
}
while q>0 {
q-=1;
let (mut s, mut e): (usize, usize) = (input!(it), input!(it));
s-=1;
// let mut rtn = v[e];
// for i in s..e {
// // print!("{} ", rtn);
// rtn = rtn ^ v[i];
// }
// e.1-=1;
// println!("{:?}, {:?}", s, e);
let rtn = ps[e] ^ ps[s];
println!("{}", rtn);
}
}
Test details
Test 1
Verdict: ACCEPTED
| input |
|---|
| 8 36 7 6 4 6 2 9 4 8 1 1 1 2 1 3 ... |
| correct output |
|---|
| 7 1 5 3 1 ... |
| user output |
|---|
| 7 1 5 3 1 ... |
Test 2
Verdict: ACCEPTED
| input |
|---|
| 200000 200000 921726510 307633388 992247073 ... |
| correct output |
|---|
| 834756431 130379787 403037296 308618218 784778243 ... |
| user output |
|---|
| 834756431 130379787 403037296 308618218 784778243 ... Truncated |
