728x90
320x100
4134번: 다음 소수
첫째 줄에 테스트 케이스의 개수가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 정수 n이 주어진다.
www.acmicpc.net
반응형
📌 접근 방법
🚫 시간초과
- 반복문을 사용하여 n까지 돌려보며 n 이상의 소수를 찾아보았더니 시간초과가 나왔다
- long long 사용
- 반복문에서 i*i를 사용하면 i까지만 반복하면서 모든 경우를 한 번에 확인할 수 있습니다.
- i*i가 n보다 작거나 같을 때까지만 반복하고 있다
- 반복 횟수를 줄일 수 있고, 성능을 향상시킬 수 있.
✅ Pass Code
#include<iostream>
#include<string>
#include<cmath>
#include<algorithm>
#include<vector>
#include<iterator>
#include<map>
#include<set>
using namespace std;
typedef unsigned long long INT;
bool prime(INT n){
if(n<=1)return false;
for(INT i=2; i*i<=n; i++){
if(!(n%i))return false;
}
return true;
}
int main() {
ios::sync_with_stdio(false);
cin.tie(NULL);
cout.tie(NULL);
INT n,k;
cin>>n;
while(n--){
cin>>k;
while(!prime(k)){
k++;
}
cout<<k<<"\n";
}
return 0;
}
![](https://t1.daumcdn.net/keditor/emoticon/friends1/large/002.gif)
728x90
반응형
'Coding Test > Baekjoon' 카테고리의 다른 글
[BOJ/백준/C++] 2108번 통계학 (1) | 2024.01.27 |
---|---|
[BOJ/백준/C++] 1010번 다리 놓기 (1) | 2024.01.27 |
[BOJ/백준/C++] 2485번 가로수 (0) | 2024.01.27 |
[BOJ/백준/C++] 1934번 최소공배수 (0) | 2024.01.27 |
[BOJ/백준/C++] 7785번 회사에 있는 사람 (0) | 2024.01.27 |