<?php // 自分自身を除く約数 // 1以外は全て約数の中に1が含まれる $array = array(); $answer = 0; for($i = 2 ; $i < 10000 ; $i++) { $array[$i] = 1; $sqrt = sqrt($i); for($j = 2 ; $j <= $sqrt ; $j++) { if($j == $sqrt) { $array[$i] +=$j; } else if($i % $j == 0) { $array[$i] = $array[$i] + $j + ($i / $j); } } } foreach($array as $k => $v) { if(@$array[$v] == $k and $v != $k) { $answer += $v; } } echo $answer; ?>