🤖
AtCoder Beginner Contest 348 C - Colorful Beans 備忘録 PHP
PHPで解いています。
問題はこちら。
解のポイント
これも最小値を都度更新していくのがポイント。
- それぞれの色の最小値を比較するために配列を作成する
- 色は一意なのでkeyに設定する
- 色の最小値はif文で比較し更新していく
- valueを比較しmaxの値を出力する
全体コード
<?php
use PHPUnit\Event\Runtime\PHP;
$N = fgets(STDIN);
// 色と最小値の連想配列
$colors_array = array();
for($i = 0; $i < $N; $i++) {
list($value, $color) = explode(" ", trim(fgets(STDIN)));
// 色の配列が存在し$valueがより小さい場合は更新
if(!isset($colors_array[$color])) {
$colors_array[$color] = $value;
} elseif($colors_array[$color] > $value) {
$colors_array[$color] = $value;
} else {
continue;
}
}
// print_r($colors_array);
// Array
// (
// [1] => 40
// [5] => 20
// )
echo max($colors_array) . PHP_EOL;
Discussion