穷举算法

来源:互联网 发布:python单例模式 问题 编辑:程序博客网 时间:2024/06/10 07:24

穷举法的基本思想是根据题目的部分条件确定答案的大致范围,并在此范围内对所有可能的情况逐一验证,直到全部情况验证完毕。若某个情况验证符合题目的全部条件,则为本问题的一个解;若全部情况验证后都不符合题目的全部条件,则本题无解。穷举法也称为枚举法。
1.鸡兔同笼:共35个头,94只脚,问鸡兔分别有多少?

import java.util.Scanner;public class Pl {    static int chicken,rubbit;    public static void main(String[] args) {        int re,head,foot;        Scanner input =new Scanner(System.in);        System.out.print("输入鸡兔头数:");        head=input.nextInt();        System.out.print("输入鸡兔脚数:");        foot=input.nextInt();        re=qJ(head,foot);        if(re==1){            System.out.println("鸡:"+chicken+"只       "+"兔:"+rubbit+"只");        }else{            System.out.println("无解");        }    }    private static int qJ(int head, int foot) {        int i,j;        for(i=0;i<=head;i++){            j=head-i;            if((i*2+j*4)==foot){                chicken=i;                rubbit=j;                return 1;            }        }        return 0;    }}
输入鸡兔头数:35输入鸡兔脚数:94鸡:23只       兔:12只

(这里只适用于结果只有一个解的情况,如果涉及多个解可以结合数组)

0 0
原创粉丝点击