已知3个数的和(0-27),每个数均为0-9,
求这三个数的各种排序(有序的)
求解
求助

解决方案 »

  1.   


    如果我没理解错的话
    三个数不就只有六种排法呢
    int a,b,,c;  //acb,acb,bac,bca;cba;cab;那你只要求出这三个数是多少就行了最明了的,三个循环;for(a=0;a<10;a++)
    for(b=0;b<10;b++)
    for(c=0;c<10;c++)
    {
       if(a+b+c==27)
    System.out.println(a+ " "+b+" "+c);}当然这个方法不是很好的,但应该很好理解吧
      

  2.   

    如果3个数字不重复就这样:public class Test_3 {
    public static void main(String[] args) {
    int[] temp = {0,1,2,3,4,5,6,7,8,9};
    f_1(temp,3);
    }
    public static void f_1(int[] a,int n) {
    m(a,0,n,"");
    }
    private static void m(int[] a,int start,int n,String str) {
    if(n==1) {
    for(int i = start;i<a.length;i++) {
    System.out.println(str+a[i]);
    }
    return;
    }
    else {
    for(int i = start;i<a.length;i++) {
    int test = a[i];
    a[i] = a[start];
    a[start] = test;
    String test1 = str+a[start];
    m(a,start+1,n-1,test1);
    a[start] = a[i];
    a[i] = test;
    }
    }
    }
    }