高中數學競賽中的組合題難度跟ACM國際計算機演算法題比?

時間 2021-06-05 13:15:18

1樓:Alex Julius

數學競賽中的真正困難的組合題有很大一部分不是組合學的問題,

而是具有代數,矩陣論,函式論背景的「組合」問題(

顯然這部分的內容的難度要比標準的組合學方面的組合問題要困難),

不僅如此,數學競賽中的組合題(或者說數學)只要不是給定具體數值的問題,

就都是計算機所無法處理的問題,

數學競賽中的組合題雖然在提法上帶有極值組合,計數組合,代數組合,圖論,

數學博弈論的理論的特徵,但是實際上和標準的理論的問題相比都顯得更無章法,

數學競賽的組合問題和組合背景的演算法題完全沒有任何可比性

演算法題的考察本質不是數學,其數學問題的形式是標準的,而演算法題唯一具有和數學競賽

的組合題的可比的地方在於方法上,演算法題要求的是構造乙個演算法,而數學競賽的組合題

很多時候是要求構造乙個組態。

可以這麼說,乙個標準的數學競賽試題(無論是代數,分析,數論還是幾何)

往往會帶有組合特徵,是指其無章法性,

但是這不意味著這是乙個組合學問題,數學競賽的核心依舊是代數和分析

毋庸置疑。

我遇見過很多有對演算法競賽有誤解的演算法競賽參與者,

一方面,演算法競賽的參與度較低(因為,並不是每個高智力人士都對程式設計感興趣),

另一方面,他們認為演算法競賽「提取」了數學中「最難」的組合學部分作為競賽形式,

而傳統的「數學」如他們所學的標準的微積分和線性代數只需要「套套公式」,

因此,演算法競賽才是最難考驗「智力」最純粹的競賽。 這當然是不對的,犯了

諸多邏輯錯誤,前面已經解釋了。

2樓:清月

但是感覺數竟中的組合題每道題的解法思路幾乎都不一樣,100道題起碼有80種不同的方法和技巧,有些基本上是看答案看懂的,但是卻沒有相類似的題目來練手了,所以是半懂半不懂,水平很難上去了,這道題看答案看懂了但是卻沒有類似的題目來鞏固,也找不到這樣的書籍,我就想再到計算機上用c或c++語言來再打一遍,這就相當於再做了一道類似的題目,對我知識積累程度和水平都會有明顯的進步,至少,對於智商不高的我來說,像組合題中的操作變換問題和計數問題很多可以直接當演算法題來做一遍,就是那些存在性的證明題很難直接拿來做,但是可否在計算機實現的過程中自己再把題目的要求改一下呢?比如說:下面這道題

這個問題可以改為設計乙個可以通過玩家有限次操作把正序的撲克牌變為反序的撲克的乙個小程式,但是設計過程中可以按照題目的解法來。還比如:

這個問題可以改成:假設乙個訊息可以經過10天便為全區居民所知曉,那麼最開始知道這個訊息的居民最少可以有?這應該就變成了設計乙個可以篩選出滿足題意的這些居民的乙個演算法,但我感覺這個問題改的不好,不太恰當,但是這些問題應該大部分都是可以被轉化程式題的吧?

3樓:Aoxiang Cui

乙個很大的不同是,ACM 的組合題可以不用證明的猜結論,通過提交返回的結果來驗證自己的猜想。數學競賽沒有證明幾乎是零分。比如 gossips and telephone 問題 或許構造一組解不難,但是說明這樣的解是最優的難度不小。

很多時候你可以幾乎確定乙個命題應該是對的(通過一些推理或者打表等),先提交一發是明智的選擇。

4樓:

演算法競賽的組合題一般就是計數題或者構造一番輸出單個解。

數學競賽是往往要你構造乙個東西,然後證明它achieve了某個upper/lowerbound。這倆區別還是挺大的

5樓:Richard Xu

強答一發(沒打過ACM,只參加過OI……)

關鍵是這兩類題的要求不一樣。

ACM中的組合題,是希望通過組合方法把問題降低到可以容忍的計算範圍內,比如說乙個暴力做法O(n!)的題目,通過組合數學把問題轉化為可以用多項式複雜度解決,但是這個多項式複雜度(比如O(n log n))中的n仍然是大到依靠暴力不可完成的。

而高中數學競賽的組合題顯然不可能是這樣的,它最終的解答必須是人能夠用手工計算出來的……所以其複雜度幾乎一定是O(1)。

題主如果對數學+資訊學這種題目感興趣的話,請嘗試Project Euler:About - Project Euler

(順便推廣一下我的小破站:Project Euler | 尤拉計畫,目前官方到588,我翻譯到569,最近比較懶都沒在翻譯)

Project Euler is a series of challenging mathematical/computer programming problems that will require more than just mathematical insights to solve. Although mathematics will help you arrive at elegant and efficient methods, the use of a computer and programming skills will be required to solve most problems.

尤拉計畫是一系列有挑戰性的數學與計算機程式設計題;要解開它們,需要的不止是數學知識:儘管數學能夠幫助你找到一些優雅而有效的方法,大多數題目仍需要借助計算機和程式設計技巧來完成解答。

The motivation for starting Project Euler, and its continuation, is to provide a platform for the inquiring mind to delve into unfamiliar areas and learn new concepts in a fun and recreational context.

創立尤拉計畫的初衷,以及不斷維持其執行的動力,在於為好奇的頭腦提供乙個平台,使他們能夠在有趣愉悅的氛圍中,探索未知領域,學習新的知識。

對高中數學競賽的建議?

作為乙個曾經的省一獲得者,我認為含金量這種東西是沒用的,現在競賽風險大,成效低,若非真正感興趣,建議不要嘗試。數學競賽若未得到國獎及以上,最後還是要看高考成績!高考成績真的是最重要。題主可以接觸數學競賽,但建議別入坑。 遠方有琴 本人經歷類似,並且身邊有很多競賽大神,包括全國金牌。我非常確認,學競賽...

高中數學競賽中蘊含著怎樣的大學數學

Alex Julius 高中數學競賽看起來和其他學科相比和大學數學相差更大,內容更初等,實際上卻更接近。這是指技巧上的,因此對普通中學生可能是噩夢級的難度。高中數學競賽其實比較特殊,其中組合問題大部分其實並不組合,而更接近於函式論,拓撲中常用的構造,分析,推理思維。序列,代數雜題和一部分組合幾何都很...

高中數學競賽需要學習高數嗎?

看了高中數學競賽的題目,我覺得如果想要拿高分,學點數論和組合數學更有幫助。如果題主所說的高數只是微積分那一套,我覺得幫助較小,可以不學 尤其是你所在的省份已經學了導數這類東西 張健 不需要。但是簡單的微積分學一點沒什麼壞處,對思考問題有些幫助,比如凸函式的一些特性,單調函式的一些理解。最關鍵的還是智...