Project Euler にチャレンジ:Problem 31 PHPでの解答

← Problem 30  Problem 32 →
力技で解いてしまったので少し後悔。
<?php
// 合計が200になる組み合わせの数
$answer = 0;

for($p200 = 0 ; $p200 <= 200 ; $p200+=200)
{
for($p100 = 0 ; $p100 <= 200 - $p200 ; $p100+=100)
{
for($p50 = 0 ;  $p50 <= 200 - $p200 - $p100 ; $p50+=50)
{
for($p20 = 0 ; $p20 <=  200 - $p200 - $p100 - $p50 ; $p20+=20)
{
for($p10 = 0 ; $p10 <= 200 - $p200 - $p100 - $p50 - $p20 ; $p10+=10)
{
for($p5 = 0 ; $p5 <= 200 - $p200 - $p100 - $p50 - $p20 - $p10 ; $p5+=5)
{
for($p2 = 0 ; $p2 <= 200 - $p200 - $p100 - $p50 - $p20 - $p10 - $p5 ; $p2+=2)
{
for($p1 = 0 ; $p1 <= 200 - $p200 - $p100 - $p50 - $p20 - $p10 - $p5 - $p2 ; $p1++)
{
	if($p1 + $p2 + $p5+ $p10 + $p20+$p50+$p100+$p200 == 200)
	{
		$answer++;
	}
}
}
}
}
}
}
}
}
echo $answer;


?>
問題文