204. Count Primes
Count the number of prime numbers less than a non-negative number, n.
Example:
Input: 10
Output: 4
Explanation: There are 4 prime numbers less than 10, they are 2, 3, 5, 7.
分析
首先构建一个判断一个数是否为质数的函数,再在给出数以内判断有多少个质数。
代码
#include<iostream>
using namespace std;
class Solution {
public:
bool isPrime(int n) {
if (n < 2) {
return false;
}
else {
for (int i = 2; i < n; i++) {
if (n % i == 0)
return false;
}
return true;
}
}
int countPrimes(int n) {
int count = 0;
for (int i = 2; i <= n; i++) {
if (isPrime(i)) {
count++;
printf("%d ", i);
}
}
return count;
}
};
int main() {
Solution s;
int n = 100;
int count = s.countPrimes(n);
printf("\n");
printf("%d内一共有 %d 个质数!\n", n, count);
return 0;
}
分析
时间复杂度 | 空间复杂度 |
---|---|
O(n) | O(1) |