1. 程式人生 > >找犯人——蠻力法(算法)

找犯人——蠻力法(算法)

body 至少 clu a+b pos nbsp div sin main

某地刑偵大隊對涉及六個嫌疑人的一樁疑案進行分析:

(1)A、B至少有一人作案;(2)A、E、F三人中至少有兩人參與作案;(3)A、D不可能是同案犯;(4)B、C或同時作案,或與本案無關;(5)C、D中有且僅有一人作案;(6)如果D沒有參與作案,則E也不可能參與作案。試用蠻力法設計算法將作案人找出來。

 1 #include <iostream>
 2 #include<cstdio>
 3 using namespace std;
 4 
 5 int main()
 6 {
 7     int A,B,C,D,E,F,G;
 8     for(A=0;A<2
;A++) 9 for(B=0;B<2;B++) 10 for(C=0;C<2;C++) 11 for(D=0;D<2;D++) 12 for(E=0;E<2;E++) 13 for(F=0;F<2;F++) 14 for(G=0;G<2;G++) 15 if((A+B>0) && (A+E+F>=2) && (A+D<2)
&& ((B+C)==2 || (B+C)==0) && (C+D==1) && (D==0
&&E==0||D==1)){ 16 puts(A==1?"作案":"不作案"); 17 puts(B==1?"作案":"不作案"); 18 puts(C==1?"作案":"不作案"); 19 puts(D==1?"作案":"不作案"); 20 puts(E==1?"作案":"不作案"); 21 puts(F==1?"作案":"不作案"); 22 printf("\n"); 23 } 24 return 0; 25 }

找犯人——蠻力法(算法)