A41052. 委派任务*
填空题
较易
知识点
题目描述
委派任务*
题目描述
某侦察队接到一项紧急任务,要求在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也不去。
问应当让哪几个人去?
输入格式
无
输出格式
要派出的人
若有多个,按字母递增顺序排列,用逗号分开(含末尾逗号)
样例输入
无
样例输出
A,B,C,F,
参考答案
#include <stdio.h>
int main (int argc, char *argv[])
{
int a =2, b=2, c=2, d=2, e=2, f=2; //0 not go, 1 go, 2 unkown
// -> E
// D -> C (force) -> B (force)
// -> A -> B
// -> E, F
for (d=1;d>=0;d--){
c=1-d;
//b=c; 之后用作判断
if (d==0) e=0;
if (d==1) a=0;//a+d!=2
if (e==0) a=1,f=1;
if (a==0) b=1; // 用于判断
if (b==c)break;
}
if(a==1)printf("A,");
if(b==1)printf("B,");
if(c==1)printf("C,");
if(d==1)printf("D,");
if(e==1)printf("E,");
if(f==1)printf("F,");
return 0;
}
上一题
下一题