Atcoder ABS ABC049C 白昼夢
こんにちは、ナナオです。 前回に引き続き競プロを実施していきたいと思います。 今回の問題は以下です。 ABC049C - Daydream 実装 最初はシンプルに…(と思ったんですが結構行数使ってしまいました) 文字の長さとそれぞれの文字列が一致しているかどうかを見て、一致していたら渡された文字列から文字数だけ削除するという実装になっています。 use proconio::input; fn rmstr(mut s: String, n: usize) -> String { for _ in 0..n { s.remove(0); } s } fn main() { input! { mut s: String, } let c = 0; loop { if s.len() < 5 { println!("NO"); return; } let a = &s[c..c + 5]; if a == "dream" || a == "erase" { s = rmstr(s, 5); } else if s.len() >= 6 && &s[c..c + 6] == "eraser" { s = rmstr(s, 6); } else if s.len() >= 7 && &s[c..c + 7] == "dreamer" { s = rmstr(s, 7); } else { println!("NO"); return; } if s.len() == 0 { println!("YES"); return; } } } これで実装できた!…と思ったんですが、通りませんでした。 ...