#問題文
p+q=r2 を満たす N 以下の素数 (p,q,r) の組の個数を求めてください。
#ソース
<?php
//入力値
$nyu = 10;
//素数を取得
for($i=2; $i<$nyu; ++$i){
$flag = 0;
for($j=2; $j<$i; ++$j){
if( $i%$j == 0){
$flag =1;
break;
}
}
if($flag == 0){
$retsu[] = $i;
}
}
//2乗の値を取得
for($i=0; $i<count($retsu); $i++){
$total[] = $retsu[$i] * $retsu[$i];
}
//計算パターンを2次元配列に格納
foreach ($retsu as $val1) {
foreach ($retsu as $val2) {
$result[] = array_merge((array)$val1, (array)$val2);
}
}
//配列に格納した組み合わせを足し算して、合計と一致するものにカウント+1
for($i=0; $i<count($retsu); $i++){
for($p=0; $p<count($result); $p++){
$tasu_kekka = ($result[$p][0] + $result[$p][1]);
if($tasu_kekka == $total[$i]){
$kekka[] = 1;
}
}
}
echo count($kekka);
?>