LeetCode 204. Count Primes
2016-10-31 10:54
316 查看
描述
找素数个数解决
打表class Solution { public: int countPrimes(int n) { if (n <= 2) return 0; vector<int> arr(n + 1, 0); for (int i = 2; i <= sqrt(n); ++i) { if (!arr[i]) for (int j = i * i; j <= n; j += i) { arr[j] = 1; } } //cout << arr[2] << endl; int j = 0; for (int i = 2; i <= n; ++i) { if (!arr[i]) { arr[j++] = i; } } //cout << "j" << j << endl; int l = 0, r = j - 1; while (l <= r) { int m = (l + r) >> 1; // cout << m << endl; // cout << "arr[m]" << arr[m] << "n - 1" << n - 1 << endl; if (arr[m] == n - 1) { //l = r = m; break; } else if (arr[m] < n - 1) { l = m + 1; } else r = m - 1; //cout << "l = " << l << "r= " << r << endl; // cout << "m=" << m << endl; } //cout << l << endl; if (l > r) return r + 1; return l + 1; } };
相关文章推荐
- leetcode 204. Count Primes
- [Leetcode]204. Count Primes
- LeetCode 204. Count Primes
- [LeetCode]204. Count Primes
- LeetCode 204. Count Primes
- Leetcode 204. Count Primes
- [leetcode] 204. Count Primes
- leetcode(52).204. Count Primes
- leetcode-204. Count Primes
- LeetCode笔记:204. Count Primes
- leetcode题解-204. Count Primes
- [LeetCode]204. Count Primes
- Leetcode 204. Count Primes
- 【LeetCode】 204. Count Primes
- Leetcode 204. Count Primes
- [LeetCode]204. Count Primes
- <LeetCode OJ> 204. Count Primes
- 【LeetCode】204. Count Primes
- LeetCode 204. Count Primes
- Leetcode 204. Count Primes