
コメントアウトしてあるノイズが多いですが、ご参考までに。
ランクアップ問題は連続した問題群なので、「後で使うかもしれない」というのがあって
つい残してしまいがちです。
<?php
// 自分の得意な言語で
// Let's チャレンジ!!
$h = 5;
$w = 5;
//マップ取得
for ($i = 0; $i < $h; $i++) {
$hoge = trim(fgets(STDIN));
for ($j = 0; $j < $w; $j++) {
$maps[$i][$j] = mb_substr($hoge, $j, 1);
}
}
//横一行を配列に格納
for ($i = 0; $i < $h; $i++) {
for ($j = 0; $j < $w; $j++) {
$lines[$i][] = $maps[$i][$j] ;
}
}
//print_r($lines);
//配列内の値の出現回数をカウント
for ($i = 0; $i < $h; $i++) {
$counts[$i] = array_count_values($lines[$i]);
}
//print_r($counts);
$winner = "D"; //初期設定
//判定
for ($i = 0; $i < $h; $i++) {
foreach($counts[$i] as $key => $value){
//echo($key.",".$value."\n");
if($value==5 && $key!="."){//もし5つ揃っていたら
$winner = $key;
}
}
}
echo($winner."\n");
/*
//出力
for ($i = 0; $i < $h; $i++) {
for ($j = 0; $j < $w; $j++) {
echo($maps[$i][$j]);
}
echo("\n");
}
*/
?>
いつもの!
この記事の問題があるページはこちら
https://paiza.jp/works/mondai/prob60/problem_index?language_uid=php
paiza Bランクレベルアップメニュー(PHP編)
1+