Week2 #2 四大湖

Posted xyhzq99

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Week2 #2 四大湖相关的知识,希望对你有一定的参考价值。

描述

我国有4大淡水湖。

A说:洞庭湖最大,洪泽湖最小,鄱阳湖第三。

B说:洪泽湖最大,洞庭湖最小,鄱阳湖第二,太湖第三。

C说:洪泽湖最小,洞庭湖第三。

D说:鄱阳湖最大,太湖最小,洪泽湖第二,洞庭湖第三。

 

已知这4个湖的大小均不相等,4个人每人仅答对一个,

请编程按照鄱阳湖、洞庭湖、太湖、洪泽湖的顺序给出他们的大小排名。

 

输入

无。

 

输出

输出为4行,第1行为鄱阳湖的大小名次,从大到小名次分别表示为1、2、3、4;第2、3、4行分别为洞庭湖、太湖、洪泽湖的大小名次。

 

样例输入

 

样例输出

3

2

1

4

此题没有做出来

借鉴了别人,学习了利用表达式的值来判断真假,利用循环去试每一种排名的可能,同时满足题目的要求的排名就可。

#include<iostream>
using namespace std;

int main() 
    int p;//鄱阳湖的排名
    int d;//洞庭湖的排名
    int t;//太湖的排名
    int h;//洪泽湖的排名
    for (p = 1; p <= 4; p++) 
        for (d = 1; d <= 4; d++) 
            for (t = 1; t <= 4; t++) 
                for (h = 1; h <= 4; h++) 
                    if ((p != d && p != t && p != h && d != t && d != h && t != h)
                        && ((d == 1) + (h == 4) + (p == 3)  == 1)
                        && ((h == 1) + (d == 4) + (p == 2) + (t == 3) == 1)
                        && ((h == 4) + (d == 3) == 1)
                        && ((p == 1) + (t == 4) + (h == 2) + (d == 3) == 1))
                        cout << p << endl << d << endl << t << endl << h << endl;
                
            
        
    
    return 0;

这是oj系统上可以接受的代码,但是实际跑出来的输出为1,2 ,3,4与样例输出不符,网络上上的代码也是如此。

不知道为什么- -

以上是关于Week2 #2 四大湖的主要内容,如果未能解决你的问题,请参考以下文章

?????????-???????????????-week2.2_

Week2-列表字符串方法示例

week2 作业

Coursera Algorithms week2 基础排序 Interview Questions: 2 Permutation

2018.2.20 OOP week2

Python学习之python基础week2-1