日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

凶手(思维)

發布時間:2023/12/15 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 凶手(思维) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

巴斯維克命案抓住了六個嫌疑犯,他們的口供如下:
A:我不是罪犯
B:A、C中有一個是罪犯
C:A和B說了假話
D:C和F說了假話
E:其他五個人中,只有A和D說了真話
F:我是罪犯
他們中只有一半說了真話,兇手只有一個。
本題可能有多種可能性,即正確答案(找到唯一的兇手)可能有多個,但每一個可能的答案(某一個是兇手)都滿足上述口供。
請編程找出可能的兇手輸出。
(假設唯一的兇手是A或者D或者E,則輸出結果為三行,按字母順序依次輸出)
輸入

輸出

樣例輸入

樣例輸出
A
D
E
思路:反正就一個兇手,我們就假設每一個人是兇手,看看有幾個人正確就可以了。
代碼如下:

#include<bits/stdc++.h> #define ll long long using namespace std;int a[10];inline int A() {if(a[1]==1) return 0;else return 1; } inline int B() {if(a[1]==1||a[3]==1) return 1;else return 0; } inline int C() {if(!A()&&!B()) return 1;else return 0; } inline int F() {if(a[6]==1) return 1;else return 0; } inline int D() {if(!C()&&!F()) return 1;else return 0; } inline int E() {if(A()&&D()&&!B()&&!C()&&!F()) return 1;else return 0; } int main() {for(int i=0;i<6;i++){memset(a,0,sizeof(a));a[i+1]=1;if(A()+B()+C()+D()+E()+F()==3) cout<<(char)('A'+i)<<endl;}return 0; }

努力加油a啊,(o)/~

總結

以上是生活随笔為你收集整理的凶手(思维)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。