<?php
// triangle 数をある程度記憶しておく。
// 14文字が最長なので、14*26 = 364 までtriangle 数を記憶しておけばそれ以上の数はない。
$triangle = array();
for($i = 1 ; $i * ($i + 1 ) / 2 < 364 ; $i++)
{
$triangle[] = $i * ($i + 1) / 2;
}
$answer = 0;
// ファイルの読み込み
$file = file_get_contents("problem42.txt");
$array1 = explode(",",str_replace("\"","",$file));
$alphabet = array("A"=>1,"B"=>2,"C"=>3,"D"=>4,"E"=>5,"F"=>6,"G"=>7,"H"=>8,"I"=>9,"J"=>10,"K"=>11,"L"=>12,"M"=>13,"N"=>14,"O"=>15,"P"=>16,"Q"=>17,"R"=>18,"S"=>19,"T"=>20,"U"=>21,"V"=>22,"W"=>23,"X"=>24,"Y"=>25,"Z"=>26);
foreach($array1 as $v)
{
$tmp = 0;
$length = strlen($v);
for($i = 0 ; $i < $length ; $i++)
{
$tmp += $alphabet[substr($v,$i,1)];
}
if(array_search($tmp,$triangle) !== FALSE)
{
$answer++;
}
}
echo $answer ;
?>