非常に簡単なロジックの問題を解決するためにPythonを巧みに使用してください!

昨夜寝る前に、中学生で買った「ハーバード大学の学生のための600の思考訓練」を読んだところ、パソコンで問題が解決できることがわかったので、早起きしてさりげなくノックしました。

最初の質問:122名前を推測する

img

核となる考えは、すべての名前をトラバースし、それらが教師によって書かれた名前であると想定し、クラスメートが話している状況に置いて、1人だけが正しいという状況を満たしているかどうかを確認することです。

#122代码
list=['a','b','c','d']
for x in list:
    if (int(x=='c')+int(x!='b')+int(x!='c')+int(x=='a')==1):
        print(x)
#122运行结果>>b

最終的な答えは「b」です。これは、質問のクラスメートBです。

126と127の結婚の質問をもう一度見てください

img

img

img

126は今の122と同じで、とてもシンプルで表現するだけですが、127は少し変わっており、シンプルなロジックで作成できます。

#126代码
list=['a','b','c']
for x in list:
    if (int(x != 'a') + int(x == 'a') + int(x != 'c')  == 1):
        print(x)
#126运行结果>>c

最終的な答えは、質問のリードボックスである「c」です。

127少なくとも1つの真があり、真の数は1以上であり、少なくとも1つは偽です。つまり、元のステートメントの論理否定の数は1以上です。Pythonで表現できます。

#127代码
list=['a','b','c']
for x in list:
    if ( (int(x != 'b') + int(x != 'b') + int(x == 'c')  >= 1) and int(x == 'b') + int(x == 'b') + int(x != 'c')>=1):
        print(x)
#127运行结果>>a

最終的な答えは「a」です。これは、質問のゴールデンボックスです。

質問3:155実行者は誰ですか

img

嘘をついている人は3人います。つまり、本当の数は1です。

#155代码
list=['a','b','c','d']
for x in list:
    if (int(x == 'b') + int(x == 'd') + int(x != 'c')  + int(x != 'd')== 1):
        print(x)
        
#155运行代码>>c

最終的な答えは「c」です。これは質問のCです。

最後の質問です。興味があれば、試してみてください。

img

おすすめ

転載: blog.csdn.net/Dai_sir_man/article/details/120074513
おすすめ