結果
問題 | No.345 最小チワワ問題 |
ユーザー | aya |
提出日時 | 2019-07-31 11:21:53 |
言語 | PHP (843.2) |
結果 |
AC
|
実行時間 | 44 ms / 2,000 ms |
コード長 | 975 bytes |
コンパイル時間 | 74 ms |
コンパイル使用メモリ | 32,020 KB |
実行使用メモリ | 32,404 KB |
最終ジャッジ日時 | 2024-07-05 06:23:04 |
合計ジャッジ時間 | 2,317 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 29 |
コンパイルメッセージ
No syntax errors detected in Main.php
ソースコード
<?php $input=str_split(trim(fgets(STDIN))); $cArray=array(); $wArray=array(); $wArraySection=array(); $ans=-1; $skip=false; //w、cそれぞれ出現するkeyを$wArray$cArrayに代入 foreach($input as $key =>$value){ if($value=="c"){ array_push($cArray,$key); }elseif($value=="w"){ array_push($wArray,$key); } } //c1つ以上w2つ以上存在しない場合を除去 if(count($cArray)==0||count($wArray)<=1){ $skip=true; } //w w間の距離を$wArraySectionに代入、keyは一文字目のwのkeyを入れる for($i=0;$i<count($wArray)-1;$i++){ if($skip===true){ break; } $wArraySection[$wArray[$i]]=$wArray[$i+1]-$wArray[$i]; } foreach( $wArraySection as $wkey =>$wSection){ if($skip===true){ break; } foreach($cArray as $ckey){ if($wkey<$ckey){ break; } $cwSection=$wSection+($wkey-$ckey)+1; if($ans==-1){ $ans=$cwSection; }else if($ans>$cwSection){ $ans=$cwSection; } } } echo $ans;