백준 1978_소수 찾기.cpp


<소스코드>

#include <iostream>
#include <string>
using namespace std;
int main(){
    int NumTestCases;
    int cnt = 0;
    cin >> NumTestCases;
    for(int i = 0; i < NumTestCases; i++){
        int num; bool check = true;
        cin >> num;
        if(num == 1){check = false;}
        for(int j = 2; j < num; j++){
            if(num%j == 0){
                //cout << num << endl;
                check = false;
                break;
            }
        }
        if(check == true){
            cnt++;
        }
        
    }
    cout << cnt << endl;
    return 0;
}
  1. 변수
    int NumTestCases : 테스트케이스 개수
    int num : 입력받은 수
    int cnt : 소수의 개수
    bool check : 소수 판별 변수
  1. 알고리즘
    1) num이 1이면 check = false
    2) 2부터 num-1까지 반복문을 돌면서 만약 j로 나누어떨어지면 합성수임으로 check = false
    3) 소수이면 cnt++
  1. 배운점
    앞으로 나오는 소수문제들의 시간초과로 인해 배우는 것들이 많아질 예정이다.
  1. 아쉬운점&느낀점
    많이 아쉽지 뒤에서 개 털리게 된다. 시간초과... 무서운 좌식....

좋은 웹페이지 즐겨찾기