์ฐ์ ๊ธฐ๋ก ๐ช
[๋ฐฑ์ค1978]-์์ ์ฐพ๊ธฐ(C++) ๋ณธ๋ฌธ
https://www.acmicpc.net/problem/1978
์์ ๊ตฌํ๊ธฐ
2๋ณด๋ค ์์ผ๋ฉด ๋ฌด์กฐ๊ฑด ์์๊ฐ ์๋๋ฏ๋ก false๋ฅผ ๋ฆฌํด, ๊ทธ๊ฒ ์๋ ๊ฒฝ์ฐ 2๋ถํฐ ํด๋น ์์ ์ ๊ณฑ๊ทผ์ผ๋ก ๋๋ ๋ณด๋ฉฐ ํ๋ฒ์ด๋ผ๋ ๋๋์ด ๋จ์ด์ง๋ฉด ์์๊ฐ ์๋๋ผ๊ณ ํ์ ํ๋ ๋ฐฉ์์ ์ด์ฉํ์๋ค. ์ฝ๋๋ ์๋์ ๊ฐ๋ค. sqrt๋ฅผ ์ฌ์ฉํ๊ธฐ ์ํด์ #include <cmath> ๋ฅผ ํด์ฃผ์ด์ผ ํ๋ค.
bool isPrime(int p) {
if (p < 2) {
return false;
}
double sq = sqrt(p);
for (int i = 2; i <= sq; i++) {
if (p % i == 0) {
return false;
}
}
return true;
}
์ ์ฒด ์ฝ๋
#include <iostream>
#include <vector>
#include <cmath>
using namespace std;
vector <int> num;
bool isPrime(int p) {
if (p < 2) {
return false;
}
double sq = sqrt(p);
for (int i = 2; i <= sq; i++) {
if (p % i == 0) {
return false;
}
}
return true;
}
int main() {
int N;
int a;
cin >> N;
while (N--) {
cin >> a;
num.push_back(a);
}
int count = 0;
for (int i = 0; i < num.size(); i++) {
if (isPrime(num[i])) {
count++;
}
}
cout << count;
}
'Problem Solving > BOJ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[๋ฐฑ์ค 1463] -1๋ก๋ง๋ค๊ธฐ(C++)/๋ค์ด๋๋ฏน ํ๋ก๊ทธ๋๋ฐ (0) | 2021.07.29 |
---|---|
[๋ฐฑ์ค 1620]-๋๋์ผ ํฌ์ผ๋ชฌ ๋ง์คํฐ ์ด๋ค์(C++)/์ด์งํ์, ์ซ์์ฌ๋ถ (0) | 2021.07.28 |
[๋ฐฑ์ค2609]-์ต๋๊ณต์ฝ์์ ์ต์๊ณต๋ฐฐ์(C++)/์ ํด๋ฆฌ๋ ํธ์ ๋ฒ (0) | 2021.07.18 |
[๋ฐฑ์ค1012] ์ ๊ธฐ๋ ๋ฐฐ์ถ(C++) (0) | 2021.07.08 |
[๋ฐฑ์ค1260]DFS์ BFS(C++) (0) | 2021.07.03 |