感觉没啥问题-_-
#include<iostream>
#include<set>
#include<cmath>
using namespace std;
int n,m;
set<int> s;
int main(){
cin>>n>>m;
for(int i=ceil(sqrt(n));i<=1001;i++){
int j=i*i;
s.insert(j);
for(int k=2;k<=((int)1e6+1)/j;k++){
s.insert(k*j);
}
}
for(int i=1;i<=m;i++){
int a;
cin>>a;
if(a>=n&&s.count(a)){cout<<"lucky"<<endl;}
else{
s.insert(a);
auto it=s.find(a);
it++;
cout<<*it<<endl;
s.erase(it);
}
}
}