
問題文をよく読まなかったせいで最初75点でした。
平均点がほぼそれなので皆さんひっかかったものと思われます。
コード例
<?php
// 自分の得意な言語で
// Let's チャレンジ!!
//1. X が素数のとき is_prime[X] が true となる配列 is_prime を用意し、
//is_prime[0] , is_prime[1] を false , それ以外を true で初期化する。
//2. 整数 i を 2 から順に N まで動かしながら次の操作を行う。
//「is_prime[i] が true である場合、 is_prime[2×i], is_prime[3×i], ... , is_prime[k×i] を全て false にする(ただし k×i <= N )
//get data
$num = trim(fgets(STDIN));
//$num=10; //test sample
//配列初期化
$is_prime = array();
$is_prime[0] = false;
$is_prime[1] = false;
for($i=2; $i<$num; $i++){
$is_prime[$i] = true;
}
//print_r($is_prime);
//process
for($i=2; $i<$num; $i++){
if($num % $i == 0){//わりきれる
$is_prime[$i] = true;
for($j=$i+1; $j<$num; $j++){
$k = $i*$j;
$is_prime[$j] = false;
}
}else{
$is_prime[$i] = false;
}
}
//print_r($is_prime);
//output answer
if($num == 1){
echo("NO\n");
}elseif(array_sum($is_prime)==0){
echo("YES\n");
}else{
echo("NO\n");
}
?>
$num=1の場合の分岐がアンサー出力時に必要でした(笑)

問題文
https://paiza.jp/works/mondai/prime_number_primer/prime_number_primer__eratosthenes
0