第三周项目4:穷举法解决组合问题(5)委派任务

来源:互联网 发布:百度ar扫描软件 编辑:程序博客网 时间:2024/05/21 09:15

问题及代码:

/**copyright(c)2016,烟台大学计算机与控制工程学院*All rights reserved.*文件名称:test.cpp*作者:崔青青*完成日期:2016年3月16日*问题描述:某侦察队接到一项紧急任务,要求在A、B、C、D、E、F六名队员中尽可能多的挑选若干人,但有以下限制条件:*(1)A和B两人中至少去一人*(2)A和D不能一起去*(3)A、E和F中要委任两人去*(4)B和C都去或都不去*(5)C和D两人中去一个*(6)若D不去,E也不去*输入:*程序输出:*/#include <iostream>using namespace std;void juge(int ch);int main(){    int a,b,c,d,e,f;    for(a=0;a<=1;a++)    {        for(b=0;b<=1;b++)        {            for(c=0;c<=1;c++)            {                for(d=0;d<=1;d++)                {                    for(e=0;e<=1;e++)                    {                        for(f=0;f<=1;f++)                        {                            if(a+b>=1&&a+d!=2&&a+e+f==2&&(b+c==0||b+c==2)&&c+d==1&&(d+e==0||d==1))                            {                                juge(a);juge(b);juge(c);juge(d);juge(e);juge(f);                            }                        }                    }                }            }        }    }    return 0;}void juge(int ch){    if(ch==1)        cout<<"去  ";    else        cout<<"不去  ";}

运行结果:

知识点总结:

熟练掌握穷举法

学习心得:

找准条件,思考全面

0 0
原创粉丝点击