提交时间:2021-05-14 21:31:34

运行 ID: 19316

#include<bits/stdc++.h> using namespace std; int a,i,ii=0; int move[10]={-1,-10,-100,-1000,-10000,1,10,100,1000,10000}; int aa[25]; bool zs(int x){ int a=pow(x,0.5); for(int i=2;i<=a;i++){ if(!x%i) return 0; } return 1; } int main(){ cin>>a; aa[0]=a; while(true){ i%=10; if(!i) ii++; aa[ii]+=move[i]; if(zs(aa[ii])){ cout<<aa[ii]; return 0; } i++; } } //时间复杂度:10^ans /* s.empty(); 如果栈为空则返回1, 否则返回0; s.size(); 返回栈中元素的个数 s.top(); 返回栈顶元素, 但不删除该元素 s.pop(); 弹出栈顶元素, 但不返回其值 s.push(); 将元素压入栈顶 */