題目是:
1、 在一條街上,有5座房子,噴了5種顏色。
2、 每個房裡住著不同國籍的人
3、 每個人喝不同的飲料,抽不同品牌的香菸,養不同的寵物
約束條件:
1、 英國人住紅色房子
2、 瑞典人養狗
3、 丹麥人喝茶
4、 綠色房子在白色房子左面
5、 綠色房子主人喝咖啡
6、 抽pall mall 香菸的人養鳥
7、 黃色房子主人抽、dunhill 香菸
8、 住在中間房子的人喝牛奶
9、 挪威人住第一間房
10、抽blends香菸的人住在養貓的人隔壁
11、養馬的人住抽dunhill 香菸的人隔壁
12、抽blue master的人喝啤酒
13、德國人抽prince香菸
14、挪威人住藍色房子隔壁
15、抽blends香菸的人有乙個喝水的鄰居
問題是:誰養魚?
#includechar*col=;
char*pad=;
char*drk=;
char*guo=;
char*smk=;
struct aa[5];
int ok(void)
else if(i==4)
else if(aa[i-1].pads==5||aa[i+1].pads==5)goto next13;
return 0;
next13:
for(i=0;i<5;i++)
if(aa[i].smoke==1)goto next13_1;
next13_1:
if(i==0)
else if(i==4)
else if(aa[i-1].pads==2||aa[i+1].pads==2)goto next14;
return 0;
next14:
for(i=0;i<5;i++)
if(aa[i].smoke==1)goto next14_1;
next14_1:
if(i==0)
else if(i==4)
else if(aa[i-1].drink==5||aa[i+1].drink==5)goto next15;
return 0;
next15:
return 1;
}char color[4]=;
char drink[4]=;
char guojia[4]=;
char smoke=;
char pads[5]=;
int rot(char a,int n)
return 1;
}int main()
}}}}}
return 0;
}
執行結果表明:總共有七組可能的解答,具體如下
---------------------第1種解---------------------
第1戶: 挪威人 黃房子 養貓 喝水 抽dunhill
第2戶: 丹麥人 藍房子 養馬 喝茶 抽blends
第3戶: 英國人 紅房子 養鳥 喝牛奶 抽pall mall
第4戶: 德國人 綠房子 養魚 喝咖啡 抽prince
第5戶: 瑞典人 白房子 養狗 喝啤酒 抽bluemaster
---------------------第2種解---------------------
第1戶: 挪威人 綠房子 養鳥 喝咖啡 抽pall mall
第2戶: 德國人 藍房子 養貓 喝水 抽prince
第3戶: 英國人 紅房子 養馬 喝牛奶 抽blends
第4戶: 丹麥人 黃房子 養魚 喝茶 抽dunhill
第5戶: 瑞典人 白房子 養狗 喝啤酒 抽bluemaster
---------------------第3種解---------------------
第1戶: 挪威人 綠房子 養鳥 喝咖啡 抽pall mall
第2戶: 德國人 藍房子 養魚 喝水 抽prince
第3戶: 英國人 紅房子 養馬 喝牛奶 抽blends
第4戶: 丹麥人 黃房子 養貓 喝茶 抽dunhill
第5戶: 瑞典人 白房子 養狗 喝啤酒 抽bluemaster
---------------------第4種解---------------------
第1戶: 挪威人 綠房子 養魚 喝咖啡 抽blends
第2戶: 德國人 藍房子 養貓 喝水 抽prince
第3戶: 瑞典人 黃房子 養狗 喝牛奶 抽dunhill
第4戶: 英國人 紅房子 養馬 喝啤酒 抽bluemaster
第5戶: 丹麥人 白房子 養鳥 喝茶 抽pall mall
---------------------第5種解---------------------
第1戶: 挪威人 綠房子 養鳥 喝咖啡 抽pall mall
第2戶: 德國人 藍房子 養貓 喝水 抽prince
第3戶: 瑞典人 白房子 養狗 喝牛奶 抽blends
第4戶: 英國人 紅房子 養馬 喝啤酒 抽bluemaster
第5戶: 丹麥人 黃房子 養魚 喝茶 抽dunhill
---------------------第6種解---------------------
第1戶: 挪威人 綠房子 養鳥 喝咖啡 抽pall mall
第2戶: 德國人 藍房子 養貓 喝水 抽prince
第3戶: 瑞典人 白房子 養狗 喝牛奶 抽blends
第4戶: 丹麥人 黃房子 養魚 喝茶 抽dunhill
第5戶: 英國人 紅房子 養馬 喝啤酒 抽bluemaster
---------------------第7種解---------------------
第1戶: 挪威人 綠房子 養鳥 喝咖啡 抽pall mall
第2戶: 德國人 藍房子 養魚 喝水 抽prince
第3戶: 瑞典人 白房子 養狗 喝牛奶 抽blends
第4戶: 丹麥人 黃房子 養貓 喝茶 抽dunhill
第5戶: 英國人 紅房子 養馬 喝啤酒 抽bluemaster
愛因斯坦難題
愛因斯坦在20世紀初的這個問題,據說世界上有98 的人回答不出來 問題 在一條街上,有5座房子,噴了5中顏色。沒個房子住著不同國籍的人。每個人喝不同的飲料,抽不同品牌的香菸,養不同的寵物。問題是 誰養魚?2.瑞典人養狗 3.丹麥人喝茶 4.綠色房子在白色房子左邊 5.綠房子主人喝咖啡 6.抽pall...
用程式解密愛因斯坦經典難題 C
這個版本的程式我將不會使用任何推理,僅僅用程式描述這15個條件,然後窮舉所有組合得到滿足這15個條件的唯一解答。首先構造 人 這個型別,根據題目可以知道每個人擁有顏色,香菸,飲料,寵物,位置,國籍這6個屬性。雖然在現實中,人抽香菸,喝飲料,養寵物,擁有國籍,只有這4個屬性,顏色和位置是房子的屬性,但...
愛因斯坦的悼詞
朱也曠 對於現代物理學,1905年是個有點特殊的年份。在這年9月的德國 物理學年鑑 annalen der physik 上,發表了由一位默默無聞的專利審查員愛因斯坦所寫的三篇 三篇 中的任何一篇,都足以使作者享有大物理學家的盛名。而其中最有名的便是 論動體的電動力學 此文宣告了相對論的誕生。在科學...