package run;
public class Test_2 {
public static void main(String[] args) {
int[] c = { 4, 4, 4, 4, 1, 4, 4, 4 };
public static void main(String[] args) {
int[] c = { 4, 4, 4, 4, 1, 4, 4, 4 };
// 最理想状态,即 假币在最后连个之间
if (c[0] + c[1] + c[2] == c[3] + c[4] + c[5]) {
if (c[6] == c[0]) {
print(c[7], c[0], 7);
} else {
print(c[6], c[0], 6);
}
return;
}
if (c[0] + c[1] + c[2] == c[3] + c[4] + c[5]) {
if (c[6] == c[0]) {
print(c[7], c[0], 7);
} else {
print(c[6], c[0], 6);
}
return;
}
// //方法二
// compare(0, c);
// compare(0, c);
// 方法三
int index = 0;
int index = 0;
for (int i = 0; i < 3; i++) {
if (c[index] + c[index + 1] != c[6] + c[7]) {
if (c[index] == c[6]) {
print(c[index + 1], c[0], index + 1);
} else {
print(c[index], c[0], index);
}
return;
}
if (c[index] == c[6]) {
print(c[index + 1], c[0], index + 1);
} else {
print(c[index], c[0], index);
}
return;
}
index = index + 2;
}
}
}
/**
* 采用递归
*
* @param index
* @param c
*/
private static void compare(int index, int[] c) {
if (c[index] + c[index + 1] != c[6] + c[7]) {
if (c[index] == c[6]) {
print(c[index + 1], c[0], index + 1);
} else {
print(c[index], c[0], index);
}
return;
}
compare(index + 2, c);
}
* 采用递归
*
* @param index
* @param c
*/
private static void compare(int index, int[] c) {
if (c[index] + c[index + 1] != c[6] + c[7]) {
if (c[index] == c[6]) {
print(c[index + 1], c[0], index + 1);
} else {
print(c[index], c[0], index);
}
return;
}
compare(index + 2, c);
}
private static void print(int jia, int zhen, int i) {
if (jia > zhen) {
System.out.println("位置为" + (i + 1) + "是假币,且偏重");
} else {
System.out.println("位置为" + (i + 1) + "是假币,且偏轻");
}
}
}
if (jia > zhen) {
System.out.println("位置为" + (i + 1) + "是假币,且偏重");
} else {
System.out.println("位置为" + (i + 1) + "是假币,且偏轻");
}
}
}
转载于:https://blog.51cto.com/jrunner/227190