题目链接:https://www.luogu.com.cn/problem/P5710
题目描述
一些整数可能拥有以下的性质:
- 性质 1:是偶数;
- 性质 2:大于 4 且不大于 12。
小 A 喜欢这两个性质同时成立的整数;Uim 喜欢这至少符合其中一种性质的整数;八尾勇喜欢刚好有符合其中一个性质的整数;正妹喜欢不符合这两个性质的整数。现在给出一个整数 m,请问他们是否喜欢这个整数?
思路:
首先对m分别判断性质1、性质2是否成立
若性质1成立,则用 x = 1 标记,否则 x = 0
性质2用 y 标记,同上
①小A喜欢两种性质同时成立,即 x && y 为真
②Uim 喜欢这至少符合其中一种性质的整数,即 ( x + y )≥ 1 为真
③八尾勇喜欢刚好有符合其中一个性质的整数,即 ( x + y )== 1 为真
④妹喜欢不符合这两个性质的整数,即 ( x + y )== 1 为真
代码如下:
#include <iostream>
using namespace std;
int main()
{
int n;
cin >> n;
int x = 0 == n % 2 ? 1 : 0;
int y = n > 4 && n <= 12 ? 1 : 0;
printf(x && y ? "1 " : "0 ");
printf(x + y >= 1 ? "1 " : "0 ");
printf(1 == x + y ? "1 " : "0 ");
printf(0 == x+ y ? "1 " : "0 ");
return 0;
}