當前位置:才華齋>計算機>java語言>

Java筆試邏輯題

java語言 閱讀(3.04W)

Java筆試邏輯題由本站小編收集整理,歡迎學習!更多內容請關注應屆畢業生考試網!

Java筆試邏輯題

  Java筆試邏輯題:

1.一個11L的杯子一個7L的杯子怎麼量出2L的水?

解析

11L裝滿,往7L的倒,把7L倒滿,剩4L,吧7L的倒空;

4L倒進7L裡,11L裝滿再往7L倒,倒滿,剩8L;

7L清空,8L倒進去,得到1L;

1L和7L得到6L;

6L和11L得到5L;

5L和7L得到2L。

反過來 在 7L裡裝滿 往 11L裡倒 , 道理是一樣的!

同類題比較:

假設有一個池塘,裡面有無窮多的水。現有2個空水壺,容積分別為5升和6升。

問題是如何只用這2個水壺從池塘裡取得3升的水。

2.飛機問題

每架飛機只有一個油箱,一箱油可以飛地球半圈。飛機間可以相互加油,所有飛機從同一個機場起飛。

要想使一架飛機安全飛地球一圈,回到起飛的機場。需要至少出動幾架飛機。

解析:

6架足矣。

3架飛機A、B、C同時起飛,同向而行。

飛至1/8航程(繞地球一週)處,正好耗去1/4燃油,其中1架飛機A將2×1/4油箱燃油分加至的飛機B、C油箱中,然後帶1/4燃油正好能安全返航。

此時飛機B、C油箱是滿的。

剩下2架飛機繼續飛行1/8航程,也就是1/4航程處,此時飛機B、C還有3/4油箱的燃油。飛機B將1/4油箱的燃油加至飛機C,飛機B剩下1/2油箱燃油返航,

飛機C為滿油箱,繼續做環球飛行,能飛至3/4航程處。

飛機C飛至1/2航程處,由同一機場同時起飛3架飛機D、E、F,與飛機A、B、C反方向飛行。

飛機D、E、F逆向飛行1/8航程時,飛機D將2×1/4油箱燃油分加至飛機E、F中返航,飛機E、F為滿油箱,再向前1/8航程,

也就是逆向的1/4航程、正向的3/4航程處,正好與做環球飛行的飛機C匯合,飛機C燃油已耗盡,飛機E、F都還有3/4油箱燃油,

兩飛機分別將1/4油箱燃油加給飛機C,並同飛機C一起返回機場,此時飛機C、E、F同為1/2油箱燃油,正好能飛完剩下的1/4航程。

如果飛機D、E、F不同時起飛,還可以節約一些燃油,但起飛飛機架次一樣。

3.幾段不規則的繩子,每個繩子燃燒時間都是60S,怎麼計算15S。

解析:

一根繩從兩頭同時點著 燃燒完時間是30秒

過程如下:將一根繩子兩端記為a b 另一根兩端記為c d

同時點著a b c,第一根燒完的時候時間過去了30秒,此時將第二根熄滅。

這樣剩下的半根繩子就是30秒

要得到15秒只需將剩下這一半的兩端點著,燒完的'時間就是15秒。

4.一群人蔘加聚會,每人頭上戴一頂帽子,只能看見別人的帽子,看不見自己的帽子,帽子只有黑、白兩種顏色。

黑帽子不少於1頂,主持人說。我們玩個遊戲,一會兒我關燈,認為自己頭上戴的是黑帽子的,扇自己一巴掌。

第一次關燈,沒有聲音。第二次,還是沒聲音。第三次關燈,才有噼裡啪啦的聲音。問有多少人蔘加聚會。

解析:

第一次關燈沒人拍手說明不是黑帽子不止一個.如果只有一個,那戴黑帽子就會拍手,因為他看到的都是戴白帽子的。

如果是兩個那麼第二次關燈的時候。戴黑帽子A只會看到戴黑帽子B一個戴黑色的帽子,這帶黑帽子A確定自己也是戴黑帽子。

但是他們看到的不只只有一個戴黑帽子的.

第三次關燈有人拍手說明只有三個人戴黑帽子。因為戴黑帽子的只看到兩個人戴黑帽子,而如果只有兩個人戴黑帽子,那麼第二次關燈就應該拍手了。

所以只有三個人戴黑帽子。

同類題比較:

一個教授邏輯學的教授,有三個學生,而且三個學生均非常聰明!

一天教授給他們出了一個題,教授在每個人腦門上貼了一張紙條並告訴他們,每個人的紙條上都寫了一個正整數,且某兩個數的和等於第三個!(每個人可以看見另兩個數,但看不見自己的)

教授問第一個學生:你能猜出自己的數嗎?回答:不能,問第二個,不能,第三個,不能,再問第一個,不能,第二個,不能,第三個:我猜出來了,是144!教授很滿意的笑了。請問您能猜出另外兩個人的數嗎?

解析:

前兩個 一個是48 一個是96 第三個是144

1 每個人雖然猜不出自己的數字 但是心裡會有兩個答案 自己的數字是這兩個答案中的一個(心裡的兩個數字是另外兩人的數字之和與數字之差)

2 如果在教授第一輪詢問三個人 三個人都猜不到的情況下 由此說明 三個數字各不相同 因為假如有兩個是相同的話

就會有人能猜出自己的數字(三個數字都是正整數,不會是0,所以如果有兩個相同的數,

除了兩個相同的數字以外的第三個人肯定知道自己的數字不是另外兩數之差,是兩數之和)

3 第二輪詢問中 第三個說猜出了自己的數字是144 由此說明他排除了心中兩個答案之一 確定了剩下的一個是正確數字

那麼 排除自己心中兩個答案中錯誤的一個 肯定是因為他知道了自己的數字只能是另外兩個數之和 並不是另外兩數之差

否定了兩數之差的可能性是根據 “2”

那麼前兩數之差肯定是和前兩數中的一個相等 那麼由此可知 前兩數和為144 並且一個是另一個的二倍

4 列出方程x+y=144 x=2y 得知 x=96 y=48 。