結果
| 問題 |
No.345 最小チワワ問題
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2019-11-30 11:06:42 |
| 言語 | Rust (1.83.0 + proconio) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 1,586 bytes |
| コンパイル時間 | 13,923 ms |
| コンパイル使用メモリ | 379,640 KB |
| 実行使用メモリ | 6,820 KB |
| 最終ジャッジ日時 | 2024-11-21 01:07:49 |
| 合計ジャッジ時間 | 14,400 ms |
|
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 21 WA * 8 |
ソースコード
fn getline() -> String {
let mut __ret = String::new();
std::io::stdin().read_line(&mut __ret).ok();
return __ret;
}
fn main() {
let line = getline();
let s = line.trim();
let mut c_flag = false;
let mut w1_flag = false;
let mut w2_flag = false;
let mut count = 0;
let mut cww_length_list: Vec<i32> = Vec::new();
for c in s.chars().into_iter() {
if c_flag == false {
if c == 'c' {
c_flag = true;
count = 1;
}
} else if c_flag == true && w1_flag == false {
count += 1;
if c == 'w' {
w1_flag = true;
} else if c == 'c' {
w1_flag = false;
count = 1;
}
} else if c_flag == true && w1_flag == true && w2_flag == false {
count += 1;
if c == 'w' {
w2_flag = true;
cww_length_list.push(count);
} else if c == 'c' {
w1_flag = false;
w2_flag = false;
count = 1;
}
} else if c_flag == true && w1_flag == true && w2_flag == true {
if c == 'c' {
w1_flag = false;
w2_flag = false;
count = 1;
}
}
}
let mut min_length = 101;
for length in cww_length_list {
if length < min_length {
min_length = length;
}
}
if min_length != 101 {
println!("{}", min_length);
} else {
println!("-1");
}
}