委派任务
2017-01-14 12:52
190 查看
某侦察队接到一项紧急任务,要求在 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 也不去。
问应当让哪几个人去?
思路:
每个人有去和不去的两种可能,用0代表不去,1代表去,
代码:
#include<iostream>
using namespace std;
int main()
{
int a,b,c,d,e,f;
for (a=0;a<2;a++)
for (b=0;b<2;b++)
for (c=0;c<2;c++)
for (d=0;d<2;d++)
for (e=0;e<2;e++)
for (f=0;f<2;f++)
{
if (a+b>=1&&a+d<2&&a+e+f==2&&(b+c==2||b+c==0)&&c+d==1&&(d==0&&e==0||d==1))
{
if (a)
cout<<"a去";
if (b)
cout<<"b去";
if (c)
cout<<"c去";
if (d)
cout<<"d去";
if (e)
cout<<"e去";
if (f)
cout<<"f去";
}
}
return 0;
}
若干人,但有以下限制条件:
1)A 和 B 两人中至少去一人;
2)A 和 D 不能一起去;
3)A、E 和 F 三人中要派两人去;
4)B 和 C 都去或都不去;
5)C 和 D 两人中去一个;
6)若 D 不去,则 E 也不去。
问应当让哪几个人去?
思路:
每个人有去和不去的两种可能,用0代表不去,1代表去,
代码:
#include<iostream>
using namespace std;
int main()
{
int a,b,c,d,e,f;
for (a=0;a<2;a++)
for (b=0;b<2;b++)
for (c=0;c<2;c++)
for (d=0;d<2;d++)
for (e=0;e<2;e++)
for (f=0;f<2;f++)
{
if (a+b>=1&&a+d<2&&a+e+f==2&&(b+c==2||b+c==0)&&c+d==1&&(d==0&&e==0||d==1))
{
if (a)
cout<<"a去";
if (b)
cout<<"b去";
if (c)
cout<<"c去";
if (d)
cout<<"d去";
if (e)
cout<<"e去";
if (f)
cout<<"f去";
}
}
return 0;
}
相关文章推荐
- 委派任务
- 6.5趣味逻辑之委派任务
- 第三周项目4—委派任务
- 委派任务
- 【New AKOJ】1016: 【C语言训练】委派任务*
- 第九周项目六 委派任务
- 任务委派
- 第三周项目-委派任务
- 17周项目五(5)。委派任务
- 第三周项目4:穷举法解决组合问题(4)委派任务
- activiti中多实例任务中动态添加用户ID、删除用户、委派
- 第三周项目:委派任务
- 第九周项目六--委派任务
- 委派任务
- 逻辑推理与判断(委派任务)
- 第三周项目5:穷举法解决组合问题---委派任务问题
- 卓越管理的实践技巧(2)成功的委派任务 Setup for Successful Delegation
- 第3周项目4 委派任务
- 项目4:委派任务
- 任务:委派任务