public static void main(String[] args) { things[0] = new Things("A",5); things[1] = new Things("B",3); things[2] = new Things("C",2); things[3] = new Things("D",4); for(int i = 0;i < things.length;i++){ for(int j = i + 1;j < things.length;j++){ if(things[j].price < things[i].price){ Things temp = things[j]; things[j] = things[i]; things[i] = temp; } } } Scanner scanner = new Scanner(System.in); int num = 0; System.out.print("输入总价格: "); try { num = scanner.nextInt(); } catch (Exception e) { System.out.println("error"); } StringBuffer result = new StringBuffer(); for(int i = 0;i <= num / things[0].price;i++){ if(things[0].price * i == num){ result.append(things[0].name + " * " + i + "\n"); } for(int j = 0;j <= num / things[1].price;j++){ if(j != 0 &&things[0].price * i + things[1].price * j == num){ result.append( things[0].name + " * " + i + " + " + things[1].name + " * " + j + "\n"); } for(int m = 0;m <= num / things[2].price;m++){ if(m != 0 && things[0].price * i + things[1].price * j + things[2].price * m == num){ result.append( things[0].name + " * " + i + " + " + things[1].name + " * " + j + " + " + things[2].name + " * " + m + "\n"); } for(int n = 0;n <= num / things[3].price;n++){ if(n != 0 && things[0].price * i + things[1].price * j + things[2].price * m + things[3].price * n == num){ result.append( things[0].name + " * " + i + " + " + things[1].name + " * " + j + " + " + things[2].name + " * " + m + " + " + things[3].name + " * " + n + "\n"); } } } } } System.out.println(result); }}
public static void test4(int[] array, int begin, int tempVal, int val,List<Integer> result) { if (tempVal == val) { System.out.println(result); return; } for (int i = begin; i < array.length; i++) { if (tempVal < val) { result.add(array[i]); tempVal += array[i]; test4(array, i + 1, tempVal, val, result); tempVal -= result.remove(result.size() - 1); } } } public static void main(String[] args) { test4(new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }, 0, 0, 10,new ArrayList()); }
import java.util.Scanner;public class Test31 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int n = sc.nextInt(); for (int a = 0; a <= n / 5; a++) { for (int b = 0; b <= n / 4; b++) { for (int c = 0; c <= n / 3; c++) { for (int d = 0; d <= n / 2; d++) { if ((a * 5 + b * 4 + c * 3 + d * 2) == n) { System.out.println("A:" + a + ", B:" + b + ", C:" + c + ", D:" + d); } } } } } } }
import java.util.Scanner;public class Test {
static class Things{
String name;
int price;
public Things(String name,int price){
this.name = name;
this.price = price;
}
}
static Things[] things = new Things[4];
public static void main(String[] args) {
things[0] = new Things("A",5);
things[1] = new Things("B",3);
things[2] = new Things("C",2);
things[3] = new Things("D",4);
for(int i = 0;i < things.length;i++){
for(int j = i + 1;j < things.length;j++){
if(things[j].price < things[i].price){
Things temp = things[j];
things[j] = things[i];
things[i] = temp;
}
}
}
Scanner scanner = new Scanner(System.in);
int num = 0;
System.out.print("输入总价格: ");
try {
num = scanner.nextInt();
} catch (Exception e) {
System.out.println("error");
}
StringBuffer result = new StringBuffer();
for(int i = 0;i <= num / things[0].price;i++){
if(things[0].price * i == num){
result.append(things[0].name + " * " + i + "\n");
}
for(int j = 0;j <= num / things[1].price;j++){
if(j != 0 &&things[0].price * i + things[1].price * j == num){
result.append(
things[0].name + " * " + i + " + " +
things[1].name + " * " + j + "\n");
}
for(int m = 0;m <= num / things[2].price;m++){
if(m != 0 && things[0].price * i + things[1].price * j + things[2].price * m == num){
result.append(
things[0].name + " * " + i + " + " +
things[1].name + " * " + j + " + " +
things[2].name + " * " + m + "\n");
}
for(int n = 0;n <= num / things[3].price;n++){
if(n != 0 && things[0].price * i + things[1].price * j +
things[2].price * m + things[3].price * n == num){
result.append(
things[0].name + " * " + i + " + " +
things[1].name + " * " + j + " + " +
things[2].name + " * " + m + " + " +
things[3].name + " * " + n + "\n");
}
}
}
}
}
System.out.println(result);
}}
if (tempVal == val) {
System.out.println(result);
return;
}
for (int i = begin; i < array.length; i++) {
if (tempVal < val) {
result.add(array[i]);
tempVal += array[i];
test4(array, i + 1, tempVal, val, result);
tempVal -= result.remove(result.size() - 1);
}
}
} public static void main(String[] args) {
test4(new int[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }, 0, 0, 10,new ArrayList());
}
import java.util.Scanner;public class Test31 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
for (int a = 0; a <= n / 5; a++) {
for (int b = 0; b <= n / 4; b++) {
for (int c = 0; c <= n / 3; c++) {
for (int d = 0; d <= n / 2; d++) {
if ((a * 5 + b * 4 + c * 3 + d * 2) == n) {
System.out.println("A:" + a + ", B:" + b + ", C:"
+ c + ", D:" + d);
}
} }
}
} }
}