Submission #3424488
Source Code Expand
/// Thank you tanakh!!!
/// https://qiita.com/tanakh/items/0ba42c7ca36cd29d0ac8
macro_rules! input {
(source = $s:expr, $($r:tt)*) => {
let mut iter = $s.split_whitespace();
input_inner!{iter, $($r)*}
};
($($r:tt)*) => {
let mut 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_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_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, usize1) => {
read_value!($iter, usize) - 1
};
($iter:expr, $t:ty) => {
$iter.next().unwrap().parse::<$t>().expect("Parse error")
};
}
fn main() {
input!(k: usize);
let n = 50;
let mut b = vec![k / n; n];
for i in 0..(k % n) {
b[i] += 1;
}
assert_eq!(b.iter().sum::<usize>(), k);
let mut upper_a = vec![0; n];
let mut lower_a = vec![0; n];
for i in 0..n {
lower_a[i] = if (n + 1) * b[i] < k {
0
} else {
(n + 1) * b[i] - k
};
upper_a[i] = (n + 1) * b[i] + (n - 1) - k;
}
println!("{}", n);
for i in 0..n {
if i > 0 {
print!(" ");
}
print!("{}", upper_a[i]);
}
println!();
}
Submission Info
Compile Error
warning: variable does not need to be mutable, #[warn(unused_mut)] on by default
--> ./Main.rs:9:13
|
9 | let mut s = {
| ^^^^^
...
53 | input!(k: usize);
| ----------------- in this macro invocation
Judge Result
Set Name |
Sample |
All |
Score / Max Score |
0 / 0 |
600 / 600 |
Status |
|
|
Set Name |
Test Cases |
Sample |
example0, example1, example2, example3, example4 |
All |
corner0, corner1, corner2, corner3, corner4, corner5, corner6, corner7, corner8, corner9, example0, example1, example2, example3, example4, rand0, rand1, rand2, rand3, rand4, rand5, rand6, rand7, rand8, rand9 |
Case Name |
Status |
Exec Time |
Memory |
corner0 |
AC |
2 ms |
4352 KB |
corner1 |
AC |
2 ms |
4352 KB |
corner2 |
AC |
2 ms |
4352 KB |
corner3 |
AC |
2 ms |
4352 KB |
corner4 |
AC |
2 ms |
4476 KB |
corner5 |
AC |
2 ms |
4352 KB |
corner6 |
AC |
2 ms |
4352 KB |
corner7 |
AC |
2 ms |
4352 KB |
corner8 |
AC |
2 ms |
4352 KB |
corner9 |
AC |
2 ms |
4352 KB |
example0 |
AC |
2 ms |
4352 KB |
example1 |
AC |
2 ms |
4352 KB |
example2 |
AC |
2 ms |
4352 KB |
example3 |
AC |
2 ms |
4352 KB |
example4 |
AC |
2 ms |
4352 KB |
rand0 |
AC |
2 ms |
4352 KB |
rand1 |
AC |
2 ms |
4352 KB |
rand2 |
AC |
2 ms |
4352 KB |
rand3 |
AC |
2 ms |
4352 KB |
rand4 |
AC |
2 ms |
4352 KB |
rand5 |
AC |
2 ms |
4352 KB |
rand6 |
AC |
2 ms |
4352 KB |
rand7 |
AC |
2 ms |
4352 KB |
rand8 |
AC |
2 ms |
4352 KB |
rand9 |
AC |
2 ms |
4352 KB |