C++ STL:找質數 ( Prime Number with C++ STL )
/* Prime Number using STL */ #include <iostream> #include <functional> #include <algorithm> #include <iterator> #include <vector> using namespace std; int main( void) { vector< int> primes; int n; cin >> n; for(int i= 2; i <= n; i++) primes.push_back(i); vector<int>::iterator primeBegin= primes.begin(), primeEnd= primes.end(); while( primeBegin != primeEnd ) { primeEnd= remove_if( primeBegin+ 1, primeEnd, not1( bind2nd( modulus<int>(), *primeBegin))); primeBegin++; } primes.erase( primeEnd, primes.end()); copy( primes.begin(), primes.end(), ostream_iterator<int>( cout, " ")); cout << endl; return 0; }
若您覺得文章寫得不錯,請點選文章上的廣告,來支持小編,謝謝。
留言