Start: Jun, 28, 2019 08:42:00
2019杭州师范大学第一届程序设计竞赛新生赛
End: Jun, 28, 2019 11:42:00
Time elapsed:
Time remaining:

Problem_ID: C
Result: Accepted
Time: 60ms
Memory: 1504kB
In contest: 1276

#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]);
	}
}