社区讨论
求大神看看还有什么毛病
P1618三连击(升级版)参与者 5已保存回复 7
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 7 条
- 当前快照
- 1 份
- 快照标识符
- @mi7xs8cg
- 此快照首次捕获于
- 2025/11/21 05:21 4 个月前
- 此快照最后确认于
- 2025/11/21 05:21 4 个月前
import java.util.Scanner;
public class Main {
CPPpublic static boolean Check_Repetition(int[] array) {
for (int i = 0; i < array.length; i++) {
for (int j = 0; j < array.length && j != i; j++) {
if (array[i] == array[j] || array[i] == 0 || array[j] == 0) {
return false;
}
}
}
return true;
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
int A = scanner.nextInt();
int B = scanner.nextInt();
int C = scanner.nextInt();
int[] array = { -1, -2, -3, -4, -5, -6, -7, -8, -9 };
boolean bo = false;
for (int i = 123; i < 988; i++) {
array[0] = i % 10;
array[1] = i / 10 % 10;
array[2] = i / 100;
int j = (int) (((double) B / A) * i);
if (j < 1000) {
array[3] = j % 10;
array[4] = j / 10 % 10;
array[5] = j / 100;
int k = (int) (((double) C / A) * i);
if (k < 1000) {
array[6] = k % 10;
array[7] = k / 10 % 10;
array[8] = k / 100;
if (Check_Repetition(array)) {
bo = true;
System.out.println(i + " " + j + " " + k);
}
}
}
}
if (bo == false) {
System.out.println("No!!!");
}
}
}
数组用来判断1-9有没有重复
只循环第一个数字,第二、三个数字用比例直接计算
大大减少了循环的次数
我觉得我的方法特别神仙,竟然能全AC(滑稽)
回复
共 7 条回复,欢迎继续交流。
正在加载回复...