• 抽签 蓝桥杯


    抽签
    
    X星球要派出一个5人组成的观察团前往W星。
    其中:
    A国最多可以派出4人。
    B国最多可以派出2人。
    C国最多可以派出2人。
    ....
    
    那么最终派往W星的观察团会有多少种国别的不同组合呢?
    
    下面的程序解决了这个问题。
    数组a[] 中既是每个国家可以派出的最多的名额。
    程序执行结果为:
    DEFFF
    CEFFF
    CDFFF
    CDEFF
    CCFFF
    CCEFF
    CCDFF
    CCDEF
    BEFFF
    BDFFF
    BDEFF
    BCFFF
    BCEFF
    BCDFF
    BCDEF
    ....
    (以下省略,总共101行)
    
    
    public class A
    {
        public static void f(int[] a, int k, int n, String s)
        {
            if(k==a.length){ 
                if(n==0) System.out.println(s);
                return;
            }
            
            String s2 = s;
            for(int i=0; i<=a[k]; i++){
                _____________________________;   //填空位置
                s2 += (char)(k+'A');
            }
        }
        
        public static void main(String[] args)
        {
            int[] a = {4,2,2,1,1,3};
            
            f(a,0,5,"");
        }
    }
    
    
    仔细阅读代码,填写划线部分缺少的内容。
    
    注意:不要填写任何已有内容或说明性文字。

    只要认真分析,很容易看出来

    public class Main{
        public static void f(int[] a, int k, int n, String s){
            if(k==a.length){     //k代表目前已经选择了的人数
                if(n==0) System.out.println(s);    //n代表目前还能选的人数?
                return;
            }
            
            String s2 = s;
            for(int i=0; i<=a[k]; i++){    //在第k个国家选人
                f(a,k+1,n-i,s2);   //填空位置
                s2 += (char)(k+'A');
            }
        }
        
        public static void main(String[] args){
            int[] a = {4,2,2,1,1,3};
            
            f(a,0,5,"");
        }
    }
  • 相关阅读:
    项目实战
    bootscript/javascript组件
    html5应用程序标签
    bootstrap框架应用
    bootstrap javascript插件部分的笔记整理
    bootstrap页面模板
    redis安装
    nginx + vsftpd 搭建 图片服务器
    centOs7 安装
    单链表的最装逼写法
  • 原文地址:https://www.cnblogs.com/chiweiming/p/10525658.html
Copyright © 2020-2023  润新知