程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> 排列組合 算法-問一道排列組合題 一組數據 隨機選四個數組成四元組,請問總共有多少個偶排列,

排列組合 算法-問一道排列組合題 一組數據 隨機選四個數組成四元組,請問總共有多少個偶排列,

編輯:編程綜合問答
問一道排列組合題 一組數據 隨機選四個數組成四元組,請問總共有多少個偶排列,

問一道排列組合題 一組數據 隨機選四個數組成四元組,請問總共有多少個偶排列,數組例如(±1.6,±1,±0.6,0) 七選四

最佳回答:


840-------偶排列數:420

程序

public class test {

static void f(double[] a,int n,String v){
    if(n==a.length){    
        System.out.println(v);
        }else{
            f(a,n+1,v+","+a[n]);
        }

}

static int nxs(double[] arr1){
    int a=0;
    for (int i = 0; i < arr1.length; i++) {
        for (int j = i+1; j < arr1.length-1; j++) {
            if(arr1[i]>arr1[j]){
                a+=1;
            }
        }
    }
    return a;
}

static void printf(){
    double[] arr = { 1.6, 1, 0.6, 0, -0.6, -1, -1.6 };
    int a=0;
    int b=0;
                for(int i=0;i<7;i++){
                    for(int j=0;j<7;j++){
                        for(int m=0;m<7;m++){
                            for(int n=0;n<7;n++){
                                if(i!=j && i!=m && i!=n && j!=m && j!=n && m!=n){
                                    System.out.printf(arr[i]+"---"+arr[j]+"---"+arr[m]+"---"+arr[n]+"---"+"\n"+i+"---"+j+"---"+m+"---"+n+"---"+"\n");
                                    ++a;
                                    double[] arr1=new double[4];
                                    arr1[0]=arr[i];
                                    arr1[1]=arr[j];
                                    arr1[2]=arr[m];
                                    arr1[3]=arr[n];
                                    int nxs=nxs(arr1);
                                    if(nxs%2==0){
                                        ++b;
                                    }
                                }
                            }
                            }
                        }
                    }
                System.out.println(a+"-------"+"偶排列數:"+b);
                }

public static void main(String[] args) {
    printf();
}

}

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved