[GESP202312 五级] 小杨的幸运数
题目描述
小杨认为,所有大于等于 a a a 的完全平方数都是他的超级幸运数。
小杨还认为,所有超级幸运数的倍数都是他的幸运数。自然地,小杨的所有超级幸运数也都是幸运数。
对于一个非幸运数,小杨规定,可以将它一直 + 1 +1 +1,直到它变成一个幸运数。我们把这个过程叫做幸运化。例如,如果 a = 4 a=4 a=4,那么 4 4 4 是最小的幸运数,而 1 1 1 不是,但我们可以连续对 1 1 1 做 3 3 3 次 + 1 +1 +1 操作,使其变为 4 4 4,所以我们可以说, 1 1 1幸运化后的结果是 4 4 4。
现在,小杨给出 N N N 个数,请你首先判断它们是不是幸运数;接着,对于非幸运数,请你将它们幸运化。
输入格式
第一行 2 2 2 个正整数 a , N a, N a,N。
接下来 N N N 行,每行一个正整数 x x x ,表示需要判断(幸运化)的数。
输出格式
输出
N
N
N 行,对于每个给定的
x
x
x ,如果它是幸运数,请输出 lucky
,否则请输出将其幸运化后的结果。
样例 #1
样例输入 #1
2 4
1
4
5
9
样例输出 #1
4
lucky
8
lucky
样例 #2
样例输入 #2
16 11
1
2
4
8
16
32
64
128
256
512
1024
样例输出 #2
16
16
16
16
lucky
lucky
lucky
lucky
lucky
lucky
lucky
提示
样例解释 1
虽然是完全平方数,但它小于
a
a
a,因此它并不是超级幸运数,也不是幸运数。将其进行
3
3
3 次
+
1
+1
+1 操作后,最终得到幸运数
4
4
4。4是幸运数,因此直接输出 lucky
。
5 5 5 不是幸运数,将其进行 3 3 3 次 + 1 +1 +1 操作后,最终得到幸运数 8 8 8。
9
9
9 是幸运数,因此直接输出 lucky
。
数据规模
对于 30 % 30\% 30% 的测试点,保证 a , x ≤ 100 , N ≤ 100 a,x \le 100,N \le 100 a,x≤100,N≤100。
对于 60 % 60\% 60% 的测试点,保证 a , x ≤ 1 0 6 a,x \le 10^6 a,x≤106。
对于所有测试点,保证 a ≤ 1 , 000 , 000 a \le 1,000,000 a≤1,000,000;保证 N ≤ 2 × 1 0 5 N \le 2 \times 10^5 N≤2×105;保证 1 ≤ x ≤ 1 , 000 , 001 1 \le x \le 1,000,001 1≤x≤1,000,001。
Scratch实现
后续
接下来我会不断用scratch来实现信奥比赛中的算法题、Scratch考级编程题实现、白名单赛事考题实现,感兴趣的请关注,我后续将继续分享相关内容