程式設計序解決組合數學問題,程式效率不高怎麼辦?

時間 2021-06-02 13:59:54

1樓:沈平

設A=,B=,即B就是A中所有奇數的集合。因為三個奇數滿足x+y≠z,這樣計算量就減少了一半。接下來考慮往B中加入偶數,再對偶數細分,將mod(x,2)=0分成兩類mod(x,4)=0和mod(x,4)=2,可以證明下B1=B∪是否滿足x+y≠z,若不滿足則再將mod(x,4)=0細分為mod(x,8)=0和mod(x,8)=4兩種情況,以此類推……演算法思路就這樣。

2樓:Cheers

這麼久都沒人回答……手機黨只好,手寫證明了……很多細節沒辦法補充,如果你在我面前的話,還能跟你說……不過上面那些結論,可以做出嚴謹的證明。

對了,那個C集合是不可選的元素集合。

3樓:qfzklm

設B中最大元素為S,則B至多有S個元素。

那麼把這個S個元素兩兩配對,(1,S-1),(2,S-2)。。那麼可知,B中元素必定是從這些配對中至多每對取乙個(一般情況下,有些配對的兩個元素乙個都沒取)。那麼可以估計B中元素的數目至多為S/2個(取整什麼的細節先不管)。

上面只是乙個簡單的對於B中元素數目的簡單估計。估計結果就是大致是原集合的一般左右。

那麼根據上面的想法,可以嘗試構造如下:

B=,即將比2015/2大的元素都挑出來。

B=,即將奇數都挑出來。

將2015個元素分成4分,取第二份和第四份。

將2015個元素分成8分,取第2、4、6、8份。

類似分成16份,32份,64份,128份,256份,512份等等,順著取差不多就行了。不過分得越多分,每份的邊緣不一定都會取進去,這樣分多了反而浪費。具體計算一下哪個取法多好了。

基本上估計結果就是一半左右了。

暫時想到這麼多。。

為什麼可以程式設計 程式能解決哪些問題 不能解決哪些問題

可以解決的是,可被描述為演算法的可計算問題。不可以解決的,就是他的對立面,不可描述為演算法,不可計算問題。舉個例子 1 1 等於幾,這是可以計算的,加數 被加數可以數位化,加法的演算法明確,一步可以出結果。同理,複雜計算可以無線分割成小的計算的疊加。這些是可計算問題。不可計算問題,比如 生命的意義是...

該數學問題該怎麼解決?

聖人無名 總感覺這道題超出了我的知識範疇,還是答一波吧。水平有限,望答錯輕噴。先解決取中點的問題,如果我的理解的正確的話,極限條件下,那個點是這樣的 2,3 4,5 項結合起來,就是 無窮遞縮等比數列的和為 這應該就是極限了。通項我覺得要分奇偶寫,不難。右右左左右右左左 就是 連續取4項結合即可。這...

如何解決這個數學問題?

瑜書 剛發現可以有乙個更為簡潔的寫法,更新一波 以上兩式不等號僅在x 1時成立。另外,對斐波那契數列,有 由 1 和 2 可以得到 由 1 和 3 有 log a Leftrightarrow ln 2 frac ln a cdot ln fraca eeimg 1 由 4 frac eeimg 1...