登录
立即注册
首页
>
绿虎论坛
>
杂类
>
学习
(
发帖
)
从自然语言到逻辑语言,题。
终极神天
@Ta
2013-06-10
2571点击
判断获奖人员:
A,B,C,D,E,F共6人参加程序竞赛。已知:
A和B中至少一人获奖;
A,C,D中至少二人获奖;
A,E中至多一人获奖;
B和F或者同时获奖,或者都未获奖;
C和E的获奖情况也相同;
如果E未获奖,则F也不可能获奖;
并且C,D,E,F中至多3人获奖。
问:哪些人获了奖?
php能编出来吗??
隐藏样式
查看源码
回复列表(7|
显示机器人聊天
)
1
春风沉醉的晚上
@Ta
/ 2013-06-10 /
样
/
源
那我也放个,哥们6个吃面包,有5种口味的。其中a不吃包子味的,而且必须和b或c或f吃一个味的;b不能吃饭味和菜味的,且不能和c或一个味;c只能吃肉味或无味的;d,e,f中不能都吃一个味的但也不能分别吃3个味的。求所有吃味的方案。
2
icEz
@Ta
/ 2013-06-10 /
样
/
源
关系有点复杂
3
终极神天
@Ta
/ 2013-06-10 /
样
/
源
@
icEz
一书上例题,书上只讲了思路,C程序让自己写,可是我连思路都理解不了啊!
4
icEz
@Ta
/ 2013-06-10 /
样
/
源
@
终极神天我也没有思路
。。
5
趣航科技小智
@Ta
/ 2013-06-10 /
样
/
源
function 是否符合条件($A,$B,$C,$D,$E,$F){
$n=0;
if($A)
$n++;
if($B)
$n++;
if($n<1)
return false;
$n=0;
if($A)
$n++;
if($C)
$n++;
if($D)
$n++;
if($n<2)
return false;
$n=0;
if($A)
$n++;
if($E)
$n++;
if($n>1)
return false;
if($B!=$F or $C!=$E)
return false;
if(!$E and $F)
return false;
$n=0;
if($C)
$n++;
if($D)
$n++;
if($E)
$n++;
if($F)
$n++;
if($n>3)
return false;
return true;
}
6
趣航科技小智
@Ta
/ 2013-06-10 /
样
/
源
@
终极神天
获奖为true没获奖为false,使用循环逐个带入函数判断
7
趣航科技小智
@Ta
/ 2013-06-10 /
样
/
源
貌似可以减少参数
添加新回复
回复需要
登录
。
function 是否符合条件($A,$B,$C,$D,$E,$F){
$n=0;
if($A)
$n++;
if($B)
$n++;
if($n<1)
return false;
$n=0;
if($A)
$n++;
if($C)
$n++;
if($D)
$n++;
if($n<2)
return false;
$n=0;
if($A)
$n++;
if($E)
$n++;
if($n>1)
return false;
if($B!=$F or $C!=$E)
return false;
if(!$E and $F)
return false;
$n=0;
if($C)
$n++;
if($D)
$n++;
if($E)
$n++;
if($F)
$n++;
if($n>3)
return false;
return true;
}