ABC149 C - Next Prime
問題はこちら atcoder.jp
方針
以上の整数 について, 未満のすべての素数で割り切れなければ, は素数である,という普通の素数判定。
コード
#include <bits/stdc++.h> using namespace std; int main(){ int x; cin>>x; vector<int> p={2}; bool not_prime=false; int i=2; while(i<=x || (not_prime==true && i>x)){ not_prime=false; for(int j=0; j<p.size(); j++){ if(i%p[j]==0){ not_prime=true; break; } } if(not_prime==false){ p.push_back(i); } i++; } cout<<(x==2 ? 2 : p[p.size()-1])<<endl; }