參考程序:
#include <iostream>
#include <cmath>
using namespace std;int nextPerfectSquare(int a) {int sqrt_a = (int)sqrt(a);if (sqrt_a * sqrt_a < a) {sqrt_a++; // 如果 sqrt(a) 的平方小于 a,那么就需要加 1,找到下一個完全平方數}return sqrt_a * sqrt_a; // 返回下一個完全平方數
}int main() {int a, N;cin >> a >> N;// 計算下一個完全平方數int next_square = nextPerfectSquare(a);// 對每個輸入的數字進行處理for (int i = 0; i < N; ++i) {int x;cin >> x;if (x >= next_square && x % next_square == 0) {// 如果 x >= next_square 且是完全平方數的倍數,說明它是幸運數cout << "lucky" << endl;} else {// 如果 x 不是幸運數,進行幸運化處理while (x % next_square != 0) {x++;}cout << x << endl; // 輸出幸運化后的結果}}return 0;
}