第九周项目六—委派任务

来源:互联网 发布:酷狗音频编辑软件 编辑:程序博客网 时间:2024/05/21 09:16
/* * Copyright (c) 2014, 烟台大学计算机学院 * All rights reserved. * 文件名称:test.cpp * 作    者:刘佳琦 * 完成日期:2014年 10 月 28 日 * 版 本 号:v1.0 * * 问题描述:某侦查队接到一项紧急任务,要求在A,B,C,D,E,F六个队员中尽可能多的挑若干人,但有以下限制条件: A和B两人中至少去一个人; A和D不能同去; A,E,F三人中派去两人 B和C都去或都不去; C和D两人中去一个; 若D不去,则E也不去 * 输入描述:无 * 程序输出: 确定的人选 */#include <iostream>using namespace std;int main(){    int a,b,c,d,e,f,count=0;    cout<<"执行任务的方案为:"<<endl;    for(a=1; a>=0; a--)     //穷举a是否去        for(b=1; b>=0; b--)      //穷举b是否去            for(c=1; c>=0; c--)   //穷举c是否去                for(d=1; d>=0; d--)  //穷举d是否去                    for(e=1; e>=0; e--)    //穷举e是否去                        for(f=1; f>=0; f--)//穷举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))//判断输出成立的条件                        {                            ++count;                            cout<<"A"<<":"<<a<<endl;  //0代表不去,1代表去。                                 cout<<"B"<<":"<<b<<endl;                            cout<<"C"<<":"<<c<<endl;                            cout<<"D"<<":"<<d<<endl;                            cout<<"E"<<":"<<e<<endl;                            cout<<"F"<<":"<<f<<endl;                         }    return 0;}

运行结果:

知识点总结:穷举法的应用

学习心得:如果没有学案的提示,很可能这道题要费很大功夫,用1,0来替代是否去不失为一个好方法

0 0