- 오늘 생각이 나서 한번 만들어 봤습니다. 제가 생각한 가장 빠른 방법이네요;;
~cpp #include <iostream> #include <time.h> using namespace std; int main() { int primeNumber[100000]; primeNumber[0] = 2; int arrLength = 1; bool isPrimeNumber = true; time_t start, end; start = clock(); cout << "2" << endl; for (int i = 3 ; i < 500000 ; i += 2) { for (int j = 1 ; j < arrLength+1 ; j++) { if ( i % primeNumber[j] == 0 ) { isPrimeNumber = false; break; } } if (isPrimeNumber) { primeNumber[arrLength++] = i; printf("%d\n", i); } isPrimeNumber = true; } end = clock(); cout << (end - start)/CLK_TCK << endl; return 0; }----
소수구하기