๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
โœจ Algorithm

[๋ฐฑ์ค€/C++] 1978๋ฒˆ : ์†Œ์ˆ˜ ์ฐพ๊ธฐ

by nitronium102 2021. 8. 5.

๋ฌธ์ œ

์ฃผ์–ด์ง„ ์ˆ˜ N๊ฐœ ์ค‘์—์„œ ์†Œ์ˆ˜๊ฐ€ ๋ช‡ ๊ฐœ์ธ์ง€ ์ฐพ์•„์„œ ์ถœ๋ ฅํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜์‹œ์˜ค.

์ž…๋ ฅ

์ฒซ ์ค„์— ์ˆ˜์˜ ๊ฐœ์ˆ˜ N์ด ์ฃผ์–ด์ง„๋‹ค. N์€ 100์ดํ•˜์ด๋‹ค. ๋‹ค์Œ์œผ๋กœ N๊ฐœ์˜ ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง€๋Š”๋ฐ ์ˆ˜๋Š” 1,000 ์ดํ•˜์˜ ์ž์—ฐ์ˆ˜์ด๋‹ค.

์ถœ๋ ฅ

์ฃผ์–ด์ง„ ์ˆ˜๋“ค ์ค‘ ์†Œ์ˆ˜์˜ ๊ฐœ์ˆ˜๋ฅผ ์ถœ๋ ฅํ•œ๋‹ค.

ํ’€์ด

์—ฌ๊ธฐ์—์„œ ๋งํ•˜๋Š” ์†Œ์ˆ˜๋Š” Prime Number์ด๋‹ค.

01. 1์€ ์†Œ์ˆ˜๊ฐ€ ์•„๋‹ˆ๋‹ค.

02. 2๋ถ€ํ„ฐ ์ œ๊ณฑ๊ทผ๊นŒ์ง€ ๋ฐ˜๋ณต๋ฌธ์„ ๋Œ๋ฆฌ๋ฉฐ ๋ฐฐ์ˆ˜ ์—ฌ๋ถ€๋ฅผ ํŒ๋ณ„ํ•œ๋‹ค.

#include <iostream>
#include <cmath>
using namespace std;

int main(){
    int N, num, cnt=0;
    cin >> N;
    bool isPrime = true;
    for (int i = 0; i<N; i++){
        cin >> num;
        if (num == 1){ // 1์€ ์†Œ์ˆ˜๊ฐ€ ์•„๋‹˜
          isPrime = false;
        }
        else {
          for (int j=2; j<=sqrt(num); j++){ // ์ œ๊ณฑ๊ทผ๊นŒ์ง€ ๋ฐฐ์ˆ˜ ๋Œ๋ฆฌ๊ธฐ
            if (num%j==0){
                isPrime = false;
                break;
            }
          }
        }
        if (isPrime == true)
            cnt += 1;
        isPrime = true;
    }
    cout << cnt << endl;
}

๋Œ“๊ธ€