Result: Accepted
Time: 60ms
Memory: 1504kB
#include<stdio.h>
#include<algorithm>
#include<string.h>
#include<map>
#include<stack>
#include<math.h>;
#include<queue>
using namespace std;
const int maxn=1e5+10;
int a[maxn];
int main() {
int n,k;
scanf("%d %d",&n,&k);
for(int i=0; i<n; i++)scanf("%d",&a[i]);
while(k--) {
for(int i=0; i<n; i++) {
int temp=sqrt(a[i]);
if(temp*temp==a[i])a[i]=temp*10;
else a[i]=temp*10+10;
}
int ans=0;
for(int i=0;i<n;i++){
if(a[i]==100)ans++;
}
if(ans==n)break;
}
for(int i=0; i<n; i++) {
if(i!=0)printf(" ");
printf("%d",a[i]);
}
}