谁是冠军

来自计算思维百科
跳转至: 导航搜索
谁是冠军.jpg

A、B、C、D四人参加百米竞赛,观众甲乙丙预测比赛的名次如下:

甲:C第一,B第二;

乙:C第二,D第三;

丙:A第二,D第四。

比赛结束后发现甲乙丙每人预测的情况都是各对一半,试问实际名次如何(假设无并列名次)?

解决方案

方案1-穷举法

A、B、C、D四人各自的名次组合有24种,列出如下:

A

B

C

D

1

2

3

4

1

2

4

3

1

3

2

4

1

3

4

2

1

4

2

3

1

4

3

2

2

1

3

4

2

1

4

3

2

3

1

4

2

3

4

1

      2      

     4     

      1      

     3      

2

4

3

1

3

1

2

4

3

1

4

2

3

2

1

4

3

2

4

1

3

4

1

2

3

4

2

1

4

1

2

3

4

1

3

2

4

2

1

3

4

2

3

1

4

3

1

2

4

3

2

1

根据甲乙丙三人的猜测,对上面表格中的每一种情况进行分析,找出符合条件的名次组合即可。

运用的计算思维

穷举法是将问题的解空间全部列出,再根据题目条件进行筛选,找到最终答案,是一种机械化的思维方式。

方案2-等值演算法

设A(i),B(i),C(i),D(i)表示A第i名,B第i名,C第i名,D第i名,i可能的取值是1、2、3、4。

对问题抽象符号化。

根据甲的猜测得到:(­­ C(1)^­­­­­­­­­­­­¬ B(2))V(¬C(1)^ B(2))=1;

根据乙的猜测得到:(C(2)^¬ D(3))V(¬ C(2)^ D(3)=1;

根据丙的猜测得到:(A(2)^¬ D(4))V(¬ A(2)^ D(4))=1.

通过对上面三条式子进行等值演算,得出A(2)^ C(1)^ D(3)=1

意思就是A第二,C第一,­­D第三,B只能第四了,可以看出结果跟穷举法是一样的。

运用的计算思维

利用离散数学的等值演算法进行解题,它把问题符号化,便于我们做机械的运算,是一种抽象的计算思维。