QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#427167 | #8777. Passport Stamps | sansen (Satoshi Yamakawa)# | Compile Error | / | / | Rust | 1.9kb | 2024-06-01 10:29:41 | 2024-06-01 10:29:42 |
Judging History
This is the latest submission verdict.
- [2024-06-01 10:29:42]
- Judged
- Verdict: Compile Error
- Time: 0ms
- Memory: 0kb
- [2024-06-01 10:29:41]
- Submitted
answer
use std::io::Write;
use std::collections::*;
type Map<K, V> = BTreeMap<K, V>;
type Set<T> = BTreeSet<T>;
type Deque<T> = VecDeque<T>;
fn main() {
input! {
n: usize,
p: i128,
a: [i128; n],
}
let mut sum = 0;
for (i, &a) in a.iter().enumerate() {
if a + i as i64 * (a - 1) + sum > p {
println!("{}", i);
return;
}
sum += a;
}
println!("{}", n);
}
// ---------- begin input macro ----------
// reference: https://qiita.com/tanakh/items/0ba42c7ca36cd29d0ac8
#[macro_export]
macro_rules! input {
(source = $s:expr, $($r:tt)*) => {
let mut iter = $s.split_whitespace();
input_inner!{iter, $($r)*}
};
($($r:tt)*) => {
let s = {
use std::io::Read;
let mut s = String::new();
std::io::stdin().read_to_string(&mut s).unwrap();
s
};
let mut iter = s.split_whitespace();
input_inner!{iter, $($r)*}
};
}
#[macro_export]
macro_rules! input_inner {
($iter:expr) => {};
($iter:expr, ) => {};
($iter:expr, $var:ident : $t:tt $($r:tt)*) => {
let $var = read_value!($iter, $t);
input_inner!{$iter $($r)*}
};
}
#[macro_export]
macro_rules! read_value {
($iter:expr, ( $($t:tt),* )) => {
( $(read_value!($iter, $t)),* )
};
($iter:expr, [ $t:tt ; $len:expr ]) => {
(0..$len).map(|_| read_value!($iter, $t)).collect::<Vec<_>>()
};
($iter:expr, chars) => {
read_value!($iter, String).chars().collect::<Vec<char>>()
};
($iter:expr, bytes) => {
read_value!($iter, String).bytes().collect::<Vec<u8>>()
};
($iter:expr, usize1) => {
read_value!($iter, usize) - 1
};
($iter:expr, $t:ty) => {
$iter.next().unwrap().parse::<$t>().expect("Parse error")
};
}
// ---------- end input macro ----------
Details
warning: unused import: `std::io::Write` --> answer.code:1:5 | 1 | use std::io::Write; | ^^^^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default error[E0308]: mismatched types --> answer.code:16:27 | 16 | if a + i as i64 * (a - 1) + sum > p { | ^^^^^^^ expected `i64`, found `i128` error[E0277]: cannot multiply `i64` by `i128` --> answer.code:16:25 | 16 | if a + i as i64 * (a - 1) + sum > p { | ^ no implementation for `i64 * i128` | = help: the trait `Mul<i128>` is not implemented for `i64` = help: the following other types implement trait `Mul<Rhs>`: <i64 as Mul> <i64 as Mul<&i64>> <&'a i64 as Mul<i64>> <&i64 as Mul<&i64>> error[E0308]: mismatched types --> answer.code:16:16 | 16 | if a + i as i64 * (a - 1) + sum > p { | ^^^^^^^^^^^^^^^^^^ expected `i128`, found `i64` error[E0277]: cannot add `i64` to `i128` --> answer.code:16:14 | 16 | if a + i as i64 * (a - 1) + sum > p { | ^ no implementation for `i128 + i64` | = help: the trait `Add<i64>` is not implemented for `i128` = help: the following other types implement trait `Add<Rhs>`: <i128 as Add> <i128 as Add<&i128>> <&'a i128 as Add<i128>> <&i128 as Add<&i128>> error: aborting due to 4 previous errors; 1 warning emitted Some errors have detailed explanations: E0277, E0308. For more information about an error, try `rustc --explain E0277`.