第一百零八章 怎麽解
字數:4232 加入書籤
“N皇後問題,其實還是比較簡單的。”張棟梁慢慢說道。
聽到這話,在座的部分高中生受到了暴擊。
“先說說約束條件。”
眾人心道果然。
“第一:大家沒有鍵盤,也沒有編譯器,需要用紙和筆,30分鍾之內寫好代碼給我,超時棄權。編程語言要求為C/C++/JAVA,這需要考察各位對編程語言基本的理解。”
“第二:這裏沒有最短運行時間,也不限你們的內存使用量,你們可以用任意方法。但是,方法最優,資源使用最少者勝,這個我來判定。”
“第三:勝者需要你們隊伍中選出最多兩人來講解你們的方法和思路,講不出視為失敗。那我就省下一本書了。”
“第四:你們隻有一次提交機會,大家熟悉的COI賽製,可以有微小錯誤,但是不能有邏輯錯誤,關鍵邏輯寫注釋,字跡必須清晰。”
“第四:你們第一堂課需要請假了。”說到這裏,張棟梁笑了起來。
“那麽,開始!”
話音剛落,他手機上的計時器再次從零開始,飛快轉動起來。
而底下的學生們愣了幾秒鍾之後開始討論,一時間教室裏很是熱鬧。
“一定是故意的,出這種難度的題……”
“我鬱悶啊,我做過八皇後,但是用的是遞歸,而且30分鍾太少了。”一位高一的學生鬱悶地說道。
“我用鍵盤寫出來都得十分鍾多,別說手寫了,我還沒怎麽用手寫過代碼呢。”
“這個題誰會去深鑽啊,做出來沒問題,但是30分鍾現想的話有難度了,而且要作出最優的解法更有難度了。”一位高二的學生抓耳撓腮地說道。
“關鍵是,寫出來後,並不知道其他人的解法,所以一定會反複優化自己的解法,這樣沒有一個目標,很難,非常難。”高三的四大天王相對冷靜得多。
“隻能先用最快的方法解出,然後再快速優化,排除遞歸。”一位數競國一且NOIP省一的高三學長沉思起來。
眾人的好勝心被激發了出來,這種比賽並沒有分值,隻有勝者。所以,每個人不知道其他人方法的情況下,隻能盡力把自己的方法寫的更好,更巧妙,降低各項複雜度。這樣,獲勝的概率才更高。
壓力籠罩在每一個人的頭頂,畢竟,如果時間足夠,隻是寫出這個算法,在場除開某小白團的成員外幾乎所有人都能熬出來。
但是,如果時間縮短到30分鍾,估計最多能有一半隊伍能寫出來就不錯了,這是在可以多次修改和編譯的情況下。如果是用紙和筆進行白板編程……這個數字就變得很不明朗了。
孟響呆呆的聽著張老師宣布完規則,然後看著其他人討論起來,他轉頭看向妹妹。
“什麽是N皇後?”
孟夢:“……”
看著孟夢呆滯的表情,孟響心裏有些平衡了,笑著說道:“原來萌萌你也不知道呀。”
“哼!”孟夢聽到哥哥的話非常生氣,傲然道:“我當然知道,我剛剛隻是被哥哥你的笨給驚到了而已。”
孟響對妹妹投向懷疑的眼神,不屑地說道:“你這丫頭,才學計算機幾天,連代碼都不會寫,知道個屁,別吹牛,哥哥又不會笑你。”
剛剛說完,他就感覺腰子一疼。
“嘶……”
“我知道不知道!”孟夢眯起眼睛,手微微用力,威脅道。
孟響冷吸一口氣連忙討饒:“知道知道,夢神千秋萬代,一統長星。”
孟夢聽到後,非常滿意的鬆了手,又心疼地幫哥哥輕輕揉了揉腰間的軟肉。
“那你說說這個玩意兒是啥。”孟響一邊享受痛苦後的快樂,,一邊把紙和筆擺在了妹妹麵前。
孟夢收回了手,拿起哥哥遞來的中性筆,一邊畫圖一邊說道:“其實,這並不僅僅是一個計算機問題,這是一個數學問題。”
孟響點了點頭,收起了開玩笑的表情,示意妹妹繼續。
“我很早之前就有看過這類問題,那會兒特地好好琢磨了一下這些問題。”說完,孟夢在紙上花了幾個格子,然後問道:“哥哥你知道八皇後嘛?”
孟響用力點了點頭,他當然聽過。
“那你知道這個題的規則嗎?”孟夢再次問道。
“.…..”孟響同學用力搖了搖頭,他沒玩過國際象棋,而且隻是聽過這個名詞而已。
見哥哥搖頭,孟夢露出了勝利般的笑容,孟響甚至能看到妹妹牙齒上的小窟窿。
“我先給哥哥解釋一下八皇後吧,八皇後就是在一個8*8的棋盤上,你擺上8個棋子,讓他們任意兩個棋子不能處在同一行,同一列,或者同一斜線上,就是一種成功的擺法,我們說的八皇後問題,就是要求出,一共有多少種這樣的擺法。”
孟響腦中開始開始遍曆……
十秒鍾之後。
“媽賣批,我核心不夠!我要加核。”孟響遍曆了不到十種之後,就放棄了這種愚蠢的方法。他對妹妹點了點頭問道:“那一共有多少種?”
孟夢稍稍思考了一兩秒鍾說道:“我記得八皇後問題的解是92種。”
孟響:“.…..”
這要是個求答案的題目該多好呀。
“那,沒法用筆算出來嘛?”孟響小心翼翼地問道。
果然,妹妹投來了鄙視的眼神,又好氣又好笑地把筆往孟響手裏一塞:“給你筆,你算!”
孟響:“.…..”
“當年高斯也就算出76種,而且不知道花了多少時間,這個30分鍾我們算什麽?而且,這是N皇後問題,要是9皇後呢,10皇後呢,更多的皇後呢?”
孟響聽後內牛滿麵,這次,他活生生被鄙視的體無完膚!
“那我們要怎麽辦……你會寫代碼嗎?那隻能靠你了,萌萌千秋萬代,一統長星。”孟響儼然成了一個跟班小人物。
“還沒來得及學呢。”孟夢聽後翻了個白眼,她這段時間就看了看算法和數據結構的書,數學底子很強的她看起來絲毫不費力,至於代碼……她隻會偽代碼。
“那,你先給我說說這個題要怎麽做吧,免得待會兒聽都聽不懂。”孟響想了想說道,然後又把筆塞給了妹妹。他們反正是來觀光的,做不做出來也無所謂了。
孟夢接過筆,微微嘟了一下嘴之後才細細地說道:“這個問題,可以使用多種方法來解,我了解的有遞歸,枚舉法,還有就是回溯法。”
“我覺得,這個的最優解法應該是怎麽利用好回溯法。”
你是小天才,你數學好,當然什麽都聽你的咯。
孟響腹誹道。(m.101novel.com)
