<?php $answer = 9999; for($i = 1 ; $i < 10000 ; $i++) { $tmp = $i; for($num = 0 ; $num < 50 ; $num++) { // 値を反転させる $len = strlen($tmp); $reverse = ""; for($j = 0 ; $j < $len ; $j++) { $reverse = $reverse.substr($tmp,$len - $j - 1,1); } $tmp += $reverse; // tmp2 が回文数か否かを調べる。 if(check_kaibun($tmp)) { $answer--; break; } } } echo $answer."\n"; function check_kaibun($num) { $flag = true; $len = strlen($num); for($i = 0 ; $i < $len / 2 ; $i++) { if(substr($num,$i,1) != substr($num,$len - $i - 1,1)) { $flag = false; break; } } return $flag; } ?>