【PHP】数字が複数個、複数行、複数列の場合

https://himaise.com/php/

array_merge

整形前、一個ずつ取り出して配列にする。

/*
例
3 10
1 158
2 170
3 180
*/
while ($i = trim(fgets(STDIN))) {
    $arr[] = $i;
}
$a = [];
foreach ($arr as $v) {
    $a = array_merge($a, explode(' ', $v));
}
/*
array(8) {
  [0]=>
  string(1) "3"
  [1]=>
  string(2) "10"
  [2]=>
  string(1) "1"
  [3]=>
  string(3) "158"
  [4]=>
  string(1) "2"
  [5]=>
  string(3) "170"
  [6]=>
  string(1) "3"
  [7]=>
  string(3) "180"
}
*/
/*
$arr = [];
$a1 = [3,10];
$a2 = [1,158];
$a3 = [2,170];
$a4 = [3,180];

$arr = array_merge($arr,$a1);
// [3,10]
$arr = array_merge($arr,$a2);
// [3,10,1,158]
$arr = array_merge($arr,$a3);
// [3,10,1,158,2,170]
$arr = array_merge($arr,$a4);
// [3,10,1,158,2,170,3,180]
*/

テンプレート用

//一行、複数個、複数列
// 3 10
$i=trim(fgets(STDIN));
$a = explode(" ", $i);

//複数行、二個以上、単列
/*  1
    23
    45
*/
  $i = fgets(STDIN);
  while( $i = fgets(STDIN)){
    $a[] = trim($i);
  }

参照

入出力ストリーム

php, programming

Posted by himajinn