遍历加if条件选择

一共有 5 个村民,编号分别为 A、B、C、D、E,他们其中一个在村口看到过锦鲤。

5 个村民各自发言:

    A :我和 E 都没有看到过锦鲤
    B :锦鲤是被 C 和 E 其中一个看到的
    C :锦鲤是被我和 D 其中一个看到的
    D :B 和 C 都没有看到过锦鲤
    E :我没有看到锦鲤

已知五个村民中有且只有 2 个人说的是真话,请问是谁看到了锦鲤?
若有多个答案,在一行中输出,按字典序,编号之间用空格隔开。

 

#include<iostream>
using namespace std;

int main()
{
for (int a = 0; a < 2; a++)
{
for (int b = 0; b < 2; b++)
{
for (int c = 0; c < 2; c++)
{
for (int d = 0; d < 2; d++)
{
for (int e = 0; e < 2; e++)
{
if (((a == 0 && e == 0) + ((c==1&&e==0)||(c==0&&e==1)) + ((c==0&&d==1)||(c==1&&d==0)) + (b == 0 && c == 0) + (e == 0)) == 2)
{
if (a == 1)
cout << "A ";
if (b == 1)
cout << "B ";
if (c == 1)
cout << "C ";
if (d == 1)
cout << "D ";
if (e == 1)
cout << "E ";
}
}
}
}
}
}
return 0;
}

posted @ 2023-04-16 10:59  鳄鱼先生偷吃番茄  阅读(24)  评论(0)    收藏  举报