猜球

 现有红、黄、黑、白色球各一个,ios

放置在一个内编号一、二、三、4四个盒子中,每一个盒子放置一球,  它们的位置未知。
    小李、小张和小刘的猜想以下:
c++

小李认为黑球编号1,黄球编号2;ide

小张认为黑球编号2,白球编号3;spa

小刘认为红球编号2,白球编号4。  结果代表他们各猜对了一半。
    据他们的猜想肯定四个色球在哪一个盒子?code

 

 

 

分析:  blog

关键是“如何表示每一个人只说对了一个”,也就是说“一个表达式为真,另外一个为假”。 io

 

方法1:相与为假,&&       相或为真  ||event

方法2:两个关系表达式的  和为1 class

方法3:两个关系表达式     不相等stream

 

 

 

nclude <iostream>
using namespace std;
int main( )
{     int a,b,c,d;
      for (a=1;a<=4;a++)
           for (b=1; b<=4; b++)
          for (c=1; c<=4; c++)
                 {     d=10-a-b-c;
                        if (   (c==1)!=(b==2) && (a==2)!=(d==3) 
                            && (a==2)!=(d==4)  && a!=b && a!=c
                            && a!=d && b!=c && b!=d && c!=d   )
                 printf("%d,%d,%d,%d\n",a,b,c,d); 
            } 
   system("pause");    return 1;
}
View Code

 

相关文章
相关标签/搜索