题面地址:P5710
这道题运用了逻辑门,可以用两个布尔变量表示两个性质是否成立。运用与或非逻辑运算符可以解决该题。
若bool a,b分别表示性质一和性质二,那么四个同学是否喜欢可以表示为如下的逻辑门形式:
a&&b: 小A Uim
a||b: Uim 八尾勇
!a&&!b: 正妹
所以使用if...else if分支分别判断再输出就可以了,代码如下(C++):
#include <stdio.h>
int main() {
int x;
scanf("%d", &x);
bool a,b;
a = (x % 2 == 0);
b = (x > 4 && x <=12);
if(a && b) printf("1 1 0 0");
else if(a || b) printf("0 1 1 0");
else if(!a && !b) printf("0 0 0 1");
return 0;
}