fn main() {
let mut lines = std::io::stdin().lines().map(|x| x.unwrap());
let t = lines.next().unwrap().parse::<usize>().unwrap();
for _ in 0..t {
let (mut n, k) = {
let nk = lines
.next()
.unwrap()
.split_whitespace()
.map(|x| x.parse().unwrap())
.collect::<Vec<usize>>();
(nk[0], nk[1])
};
match k {
1 => short(n, "AP"),
2 => short(n, "AAPP"),
3 => short(n, "AAAPAPPP"),
_ => {
for _ in 2..k {
print!("A");
n -= 1;
}
while n >= 6 {
print!("AAPAPP");
n -= 6;
}
println!("{}", &"AAPAPP"[0..n]);
}
}
}
}
fn short(n: usize, s: &str) {
if n > s.len() {
println!("NIE");
} else {
println!("{}", &s[0..n]);
}
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 | fn main() { let mut lines = std::io::stdin().lines().map(|x| x.unwrap()); let t = lines.next().unwrap().parse::<usize>().unwrap(); for _ in 0..t { let (mut n, k) = { let nk = lines .next() .unwrap() .split_whitespace() .map(|x| x.parse().unwrap()) .collect::<Vec<usize>>(); (nk[0], nk[1]) }; match k { 1 => short(n, "AP"), 2 => short(n, "AAPP"), 3 => short(n, "AAAPAPPP"), _ => { for _ in 2..k { print!("A"); n -= 1; } while n >= 6 { print!("AAPAPP"); n -= 6; } println!("{}", &"AAPAPP"[0..n]); } } } } fn short(n: usize, s: &str) { if n > s.len() { println!("NIE"); } else { println!("{}", &s[0..n]); } } |
English