【题目链接】:https://nanti.jisuanke.com/t/25085
【题目描述】:
用 0,1,2,3⋯7 这 8 个数组成的所有整数中,质数有多少个(每个数字必须用到且只能用一次)。
提示:以 0 开始的数字是非法数字。
【解析】:此题为填空题,可用暴力求解,得出最后答案即可。
【答案】:2668
【代码】:
public class Main {
public static void main(String[] args) {
int a, b, c, d, e, f, g, h;
int sum = 0;
for (a = 1; a <= 7; a++)
for (b = 0; b <= 7; b++)
for (c = 0; c <= 7; c++)
for (d = 0; d <= 7; d++)
for (e = 0; e <= 7; e++)
for (f = 0; f <= 7; f++)
for (g = 0; g <= 7; g++)
for (h = 0; h <= 7; h++)
if (su(a * 10000000 + b * 1000000 + c
* 100000 + d * 10000 + e * 1000
+ f * 100 + g * 10 + h))
if (a != b && a != c && a != d
&& a != e && a != f
&& a != g && a != h)
if (b != c && b != d && b != e
&& b != f && b != g
&& b != h)
if (c != d && c != e
&& c != f && c != g
&& c != h)
if (d != e && d != f
&& d != g
&& d != h)
if (e != f
&& e != g
&& e != h)
if (f != g
&& f != h)
if (g != h)
sum++;
System.out.println(sum);
}
private static boolean su(int i) {
for (int j = 2; j * j <= i; j++)
if (i % j == 0)
return false;
return true;
}
}