社区讨论

10分求调,必关!

B3929[GESP202312 五级] 小杨的幸运数参与者 4已保存回复 3

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
3 条
当前快照
1 份
快照标识符
@mewjpr60
此快照首次捕获于
2025/08/29 16:03
6 个月前
此快照最后确认于
2025/11/03 23:43
4 个月前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
const int n = 1000010;
const int m = 2e5 + 10;
int a, N, x[m], c[n], l, k = n, maxx;
int main( ){
	cin >>a >>N;
	for ( int i = 1; i<=N; i++ ){
		cin >>x[i];
		maxx = max (maxx, x[i]);
	}
	for ( int i = 1; i<=1000; i++ ){
		if ( i*i>=a )
			c[++l] = i*i;
		if ( i*i>=maxx )
			break;
	}
	for ( int j = 1; j<=N; j++ ){
		bool f = 0;
		for ( int i = 1; i<=l; i++ ){
			if ( c[i] > x[j] ){
				k = c[i];
				break;
			}
			else if ( x[j]%c[i]==0 ){
				f = 1;
				break;
			}
		}
		if ( f==1 ){
			cout <<"lucky\n";
		}
		else{
			cout <<k <<"\n";
		}
	}
    return 0;
}

回复

3 条回复,欢迎继续交流。

正在加载回复...