結果
問題 |
No.6 使いものにならないハッシュ
|
ユーザー |
![]() |
提出日時 | 2016-12-07 23:42:51 |
言語 | PHP (843.2) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,171 bytes |
コンパイル時間 | 5,622 ms |
コンパイル使用メモリ | 30,568 KB |
実行使用メモリ | 35,984 KB |
最終ジャッジ日時 | 2024-11-28 04:13:21 |
合計ジャッジ時間 | 9,129 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | WA * 32 |
コンパイルメッセージ
No syntax errors detected in Main.php
ソースコード
<?php $k = trim(fgets(STDIN)); $n = trim(fgets(STDIN)); // create prime's list $prime = []; $hash = []; $bool = []; for($i = 0; $i < $n; $i++){ $bool[$i] = false; } for($i = 2; $i <= $n; $i++){ if($bool[$i]) continue; if($i >= $k){ array_push($prime, $i); $hashTmp = $i; while($hashTmp > 9){ $hashTmp = (string)$hashTmp; $hashTmp2 = 0; for($l = 0; $l < strlen($hashTmp); $l++){ $hashTmp2 += (int)$hashTmp[$l]; } $hashTmp = $hashTmp2; } array_push($hash, $hashTmp); } for($j = $i * $i; $j < $n; $j += $i){ $bool[$j] = true; } } // create prime's list end $ans = $prime[0]; $check = []; for($i = 0; $i < 10; $i++){ $check[$i] = 0; } $begin = 0; $end = 0; do{ $flag = true; $check[$hash[$end]] += 1; if($check[$hash[$end]] == 2){ do{ $check[$hash[$begin++]]--; $check[$hash[++$end]]++; $flag = true; for($m = 0; $m < 10; $m++){ if($check[$hash[$m]] > 1){ $flag = false; break; } } if($flag) break; }while($end < count($prime)); } if($flag){ $ans = $prime[$begin]; } $end++; }while($end < count($prime)); echo $ans."\n"; ?>