조띵의지극히개인적인공간

소수 중 처음 6개를 나열하면 2, 3, 5, 7, 11, 13 이다. 이 때 6번째 소수는 13이다.

10001번째 소수는 무엇인가?



내맘대로 해설 :
 숫자를 증가시키면서 소수 리스트를 만들고 10001째 소수를 검출해낸다. 당연하지만 딱히 다른방법은 떠오르지 않네..





void func()
{
int Prime[20000]={0};
int PrimeCount=0;

for (int i=2; PrimeCount<=10001 ; i++)
{
int n;
for (n=0; n<PrimeCount; n++)
{
if (i%Prime[n]==0) break;
}
if (n!=PrimeCount) continue;

Prime[PrimeCount++]=i;
}
printf("10001st Prime = %d\n", Prime[10001]);

}
저작자 표시
신고
Posted by 조띵


티스토리 툴바