結果

問題 No.345 最小チワワ問題
ユーザー ayaaya
提出日時 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

ソースコード

diff #

<?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;
0