結果
問題 |
No.345 最小チワワ問題
|
ユーザー |
|
提出日時 | 2019-07-30 17:33:14 |
言語 | PHP (843.2) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,424 bytes |
コンパイル時間 | 112 ms |
コンパイル使用メモリ | 30,900 KB |
実行使用メモリ | 31,344 KB |
最終ジャッジ日時 | 2024-07-05 02:34:12 |
合計ジャッジ時間 | 2,346 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 23 WA * 6 |
コンパイルメッセージ
No syntax errors detected in Main.php
ソースコード
<?php /* 問題文 Cさんはチワワが大好きです。そこでCさんは、文字列にもチワワを見出すことにしました。 Cさんによれば、ある文字列に 'c', 'w', 'w' がこの順で含まれるとき、その文字列を「チワワ列」であるといいます。 Cさんは小さなチワワが好きなので、できるだけ長さの小さいチワワ列を見つけたいです。 文字列 S が与えられるので、その連続した部分文字列のうちチワワ列となるものの最小の長さを求めてください。 入力 S 1行目に文字列 S(1≤|S|≤100) が与えられる。 S は小文字のアルファベットのみで構成される。 出力 S の連続した部分文字列のうちチワワ列となるものの最小の長さを整数で出力してください。 もしSにチワワ列が含まれない場合は−1を出力してください。 最後に改行してください。No.345 最小チワワ問題 */ $input=str_split(trim(fgets(STDIN))); $ans=null; $keyC=0; $keyW1=0; $judge=0; foreach($input as $key=>$value){ if($value=="c"){ if($keyW1==0){ $keyC=$key; } }elseif($value=="w"){ if($keyW1==0){ $keyW1=$key; }else{ $judge=$key-$keyC+1; $keyC=0; $keyW1=0; if($ans>$judge||$ans==null){ $ans=$judge; } } } } if(is_null($ans)){ $ans=-1; } echo $ans; ?>