learn deep learning 2015-07-03 05:37 采纳率: 100%
浏览 2264
已采纳

问一道排列组合题 一组数据 随机选四个数组成四元组,请问总共有多少个偶排列,

问一道排列组合题 一组数据 随机选四个数组成四元组,请问总共有多少个偶排列,数组例如(±1.6,±1,±0.6,0) 七选四

  • 写回答

3条回答

  • 丵鹰 2015-07-03 08:01
    关注

    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();
    }
    

    }

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 python的qt5界面
  • ¥15 无线电能传输系统MATLAB仿真问题
  • ¥50 如何用脚本实现输入法的热键设置
  • ¥20 我想使用一些网络协议或者部分协议也行,主要想实现类似于traceroute的一定步长内的路由拓扑功能
  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100