U E D R , A S I H C RSS

소수구하기/상욱

  • 오늘 생각이 나서 한번 만들어 봤습니다. 제가 생각한 가장 빠른 방법이네요;;

~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;
}
----
소수구하기
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:30:13
Processing time 0.0106 sec