0回目
今日のバグ作品です。入力nを元にk回計算をする問題です(ABC192-C: C - Kaprekar Number)。
use proconio::{input, marker::Chars}; fn main() { input! { n: Chars, k: usize, }; let mut a = n.to_owned(); // 数字(char)の配列 let mut a_int = 0; // 文字列aを整数にしたもの for _i in 1..=k { // aを計算 // a_intを更新 } println!("{}", a_int); }
これだと、k=0のとき、for内部を経ないので0が出てきてしまいます。正しくはnが出力される必要があるのですが。私の作ったバグはこのような境界条件で変になるパターンが多いです。
let mut a_int = n.iter().collect::<String>().parse::<u32>().unwrap();