《演算法競賽-訓練指南》第二章-數論常用演算法總結

數論是一個神奇的東西,各種結論都很經典,有些懂,有些自己還不是很懂。接下來就一個一個的介紹吧。第一、素數,素數本身就是一個很讓人驚奇的數,因為它代表的是唯一,自己就有連個因數,一個是1,一個是自己,因為1是每個數都具備的因子(除了0),所以,它也就相當於只有自己。是一個自我感覺很良好的人呀!最樸素的演算法當然是從2-sqrt(2)裡面找因子,如果沒有,就說明它是個素數。為什麼到sqrt(n)?你想,sqrt(n)* sqrt(n)=

《演算法競賽-訓練指南》第二章-2.9_UVa 11426

題目越來越難,自己做都做不下去了,主要是自己不能夠靜下心來。這怎麼靜下心呀?和一些人還是差距太大呀。人家才是真正的聰明人,我這一遇到痛點就做不下去了,這怎麼可能能做出什麼成績,每次都當在後悔的時候自己才下定決心,那樣真的有用嗎?而自己學習這些知識的最終目的又是什麼呢?這真是個矛盾的地方。自己明明已經告誡自己了,自己不適合那種勢力的想法,我就是單純的想學習知識。學到學不到,全憑自己的興趣,自己愛它,所以願意將全部的時間都用在這上面,而如果自己一旦將之當做包袱,或者找到了更好的自己的興趣點,這,自己

《演算法競賽-訓練指南》第二章-2.12_LA 5059

真的很喜歡這個專題,就是兩個人玩的遊戲專題。這裡麵包含的思想是非常重要的,數學味道,邏輯味道非常的濃厚。經典的代表遊戲就是Nim>遊戲:遊戲的描述是這樣的,給你三堆火柴,你每次可以從每堆裡面拿出一個,或者一個以上的,當然可以是正堆都拿走。兩個人玩,每個人都是玩的最棒的。問你,怎麼判斷輸贏?其實對每堆求一下Nim和就可以了,也就是對所有堆求疑惑,結果為0,先手必輸,否則先手必贏!這裡用SG定理可以輕鬆解決,首先要弄明白SG定理所描述的數學問題:SG[x] =

《演算法競賽-訓練指南》第二章-2.14_UVa 11021

機率的題目,但是做起來也不是很順手,覺得情況太多了,實在是無從下手。題解給出了思路:令f[i]表示起初有一個鳥,經過i代之後全部死亡。然後就推出了一個公式f[i] = p0 + p1*f(i - 1) + p2*f(i - 1)^2 + p3*f(i - 1)^3......這是怎麼得出來的啊???百思不得其解#include <stdio.h>#include <string.h>#include <math.h>#include <iostream&

《演算法競賽-訓練指南》第二章-HDU_2018

其實這是道非常簡單的遞推題目,但是我也想把這道題目傳一下,就是關于思想的問題。分類討論的思想:今年的母牛數量就等於去年的老牛數量,加上剛生出的小牛數量。而去年的老牛數量就是f[n - 1],剛出生的小牛數量就是3年前的牛門,因為只要一過了3年任何牛都可以生育,所以對於去年的牛來說,新增加的牛的數量就是3年前的牛的數量。#include <stdio.h>#include <string.h>#include <iostream>#include

《演算法競賽-訓練指南》第二章-2.15_UVa 11722

這道題目非常的好,個人非常的喜歡!這道題目的意思是:兩個人要坐火車相遇到一個城市,但是坐火車到一個城市的時間是不確定的,第一個人到車站的時間範圍是[t1,t2],第二個人到車站的時間範圍是[s1,s2],而車在車站停留的時間是w。問你兩人在車站相遇的機率是多少?其實我認為這道題目的結果是有些問題的,其實題解是按照[t1,t2]範圍內,火車已經離開的,但是按照真實的題意,不應該t2到,t2 +

通過exe啟動class

昨天下載了號稱純java版的網遊《海天英雄傳》, 發現其將包括jvm.dll在內的所有組件及所有class全部封裝使用,覺得這種方式比較可行,既保證了理論上的純java開發,又避免了核心代碼被反編譯的風險;於是自己也嘗試著寫了點類似方法,摘錄其中一個直接以exe檔案調用main函數的發表。本方法通過jni方式實現。/** * 直接通過exe啟動class(免外部配置) * * project:loonframework * author:chenpeng *

《演算法競賽-訓練指南》第二章-2.4-pre_Catalan

求catalan數,經典的題目想對應的就是凸多邊形三角剖分數,枚舉頂點,遞推求解。#include <stdio.h>#include <string.h>#include <iostream>#include <string>using namespace std;const int MAXN = 100;long long f[MAXN];void init(){f[3] = 1;for (int i = 4; i < MAXN; i++

小範圍求整數的劃分(遞迴實現)

淚奔了,求的範圍太小了。估計也就到100,就很難進行下去了。因為種類數是在太多了。還只能用五邊形數的那種方法解決。誒,還得研究那個東西,貼出來吧:#include <stdio.h>#include <string.h>#include <iostream>#include <string>using namespace std;int divInt(int n, int m){if (n == 1 || m == 1){return 1;}if

《演算法競賽-訓練指南》-第二章-2.18_UVa 10294

非常的喜歡這道題目!首先還是老規矩,描述一下這道題目,題目是這個意思:項鏈和手鐲,都是有若干個珠子串成的,不同之處在於項鏈不能夠反轉,而手鐲可以反轉,而給你n個珠子,t中顏色,每種顏色可以是任意多個珠子,問你,可以構造出多少種項鏈和手鐲!這道題目,我私自認為是一道關於置換方面的經典的例題!開始我都沒沉下心來去考慮這個題目,覺得不好玩,但是,當我沉下心仔細去考慮這道題目的時候,我真的覺得數學博大精深!首先,我們來看看兩個很有用的關於置換的定理,第一個就是Burnside(燒邊?)引理,描述為:對於

《演算法競賽-訓練指南》第二章-2.4-LA 3516

這幾天一直靜不下心,做題一點都沒有效率。也可能是動態規劃這邊的題目實在是有點難度,所以有時候搞一道題目都弄的很長時間,很悲催。在一個就是自己的智商不怎麼樣。這道題目的意思是給你一個序列,求出以這個序列為準的,所有的樹。這樣就得實用遞迴求解了,也就是每個樹都可以分成左子樹和右子樹,這兩種書其實又可以看成是獨立的樹。所以就分成了子問題求解,非常的不錯。遞推方程就是 dp(i, j) = sum(dp(i + 1, k - 1) * dp(k, j))。當然k是從1 - len -

《演算法競賽-訓練指南》第二章-數論_高斯消元

矩陣是個神奇的東西,也是線性代數求解當中很重要的一個工具。線性方程組求解的時候,就要用到矩陣。增廣矩陣求解的過程還是比較簡單的,就是很久就學過的高斯消元,只不過是以前不這樣叫,沒有系統的方法執行出來說明什麼樣的步驟才是真正正確的步驟。這個在自己學線性代數的時候其實就應該懂的。實現起來,其實就是一個用語言來實現思想的事。貼出代碼:#include <stdio.h>#include <string.h>#include <math.h>#include <

山海演武傳·黃道·第一卷 雛龍驚蟄 第十章 天下英雄在譜中(上)

 「月王」內特.卡奧斯絕不是個簡單的貨色,可惜諸葛慶康也並非吃乾飯長大,兩人話不投機,相互間的表情也愈發顯得嚴峻。空氣中逐漸彌散出濃重的火藥氣息,這是大戰最終爆發的前兆。離局勢的徹底失控,就只差那麼一根最後的,微不足道的導火索罷了。“既然如此,晚輩只好用力量讓您屈服了!”

《演算法競賽-訓練指南》第二章-2.5_UVa 11361

這道題目寫了兩天呀,好氣憤呀。就是靜不下心來,也不知道怎麼回事。也是這題目一直不讓我過,改來改去都改不對。所以今天就什麼都不想了,重寫一邊,開始也過不了,不過改了一下就過了。氣憤呀!這道題目是個好題目,題目的大概意思是這樣的:給你a,b,和k,問你在a-b之間有多少個這樣的數字x,使得x%k == 0 並且 x的各個數字相加起來的和%k == 0。明顯暴力是過不了的。這種題目第一步都是令f(x)表示0-x滿足這些條件的數目,則題目就等於f(b) - f(a -

《演算法競賽-訓練指南》第二章-2.26_UVa 10341

這是一道純解方程的題目,因為確定了範圍,可以直接判斷它的單調性。然後根據映像求解。就注意這種單調性求解的題目一般都是要二分的。而因為double類型的一些缺點,並不想我們現實中那樣。比如1就是1,在double型裡面1可能是0.999999999999。注意這些就行了。另外就是二分的時候R-L盡量的小一些吧,因為越小答案就越精確。這個不一定就是保留到4位,你就1e-5就行,這是不一定的,稍微小一點時間上不會差太多,但是不這樣答案就有可能錯!切記。貼出代碼:#include

百度終於給力了,百度移動雲測試中樞(MTC)確實好用

多少年了,百度終於做了件好事,不容易啊。前幾天小弟忽略了此物,今天經高人提點,剛剛實測了百度推出的“百度移動雲測試中樞”(MTC),發現此物超好用的,給缺乏真機的Android開發人員以極大便利。有了它,我們終於不必再膽顫心驚的擔心某某真機不相容自己應用,只要用它一測,不用十分鐘就全清楚了~PS:目前百度雲調試速度過慢(慢過Android模擬器的神速),個人認為暫時沒有太大價值,但云測試非常實用。下面是小弟用前一陣新寫的LGame樣本進行的測試(另,高度懷疑【索尼LT26i】這台機器跪了,暫未發

談談小弟最近暗自幹些什麼勾當(LGame WP版開發進度彙報)

時間過得真快,一轉眼又快到農曆新年,小弟也很久沒在部落格露面,趁此機會出沒一下,免得被人誤解趕潮流“回老家結婚”去了……其實小弟最近不出現,並不代表著放棄了這個部落格,更不代表著這個部落格的更新會緩慢下來。相反,小弟最近並非不再活躍,而是一直在暗地裡搞陰謀詭計(^^)~話說SVN中的JavaSE與Android版LGame-0.3.3都更新了好幾次,文檔也偷偷寫了一部分,C#版的擴充包也快寫完(核心包去年就寫完了),C/C++版也完成了將近一半。等到這些都搞定,小弟就有底氣在網路上多折騰一陣。文

恐怖絕倫,SOPA和PIPA捅了網站窩!

今天剛一上外網,愕然發現N個網站同時出現了類似如下文字:Join the largest online protest in history: tell the US Congress to stop  SOPA and PIPA

關於LGame-0.2.9版的開發進度

小弟再現嘍~~~實際上LGame-0.2.9版已經基本完成,預計下周補完相關文檔,12月初即可發布。在部落格上吼聲主要是詢問下網友有沒有什麼需要的細節實現,不太麻煩的話小弟一塊加上(麻煩的話,則一律日後再說/(^o^)/……)。1、在0.2.9版中,修正了所有獲得使用者反饋的前版BUG(諸如長按鍵盤不放減低FPS之類的細節問題也修正了(為此特意找了個帶鍵盤的手機……))。2、在0.2.9版中,改進了一些運算細節,預設情況下可提速約10FPS以上。3、在0.2.9版中,擴充了原有類功能,加入了諸像

山海演武傳·黃道·第一卷 雛龍驚蟄 第八章 化外自成國

一隻夜隼的鳴叫聲響起,劃破了村落的安靜,也微微擾亂了冰冷的氣流。“躲開,快點躲開!”平地上突然滿是煙塵,一道金黃色的“閃電”大喊著划過了天際,以勢不可擋的壓迫感沖向了玉桂部落的大門。閃電是不會說話的,如果某個“閃電”突然開口說了話,原因就肯定無外乎兩點。要麼你在做夢,要麼就是這個閃電並不是閃電,而是人或妖魔一類的生命體。不止我們這樣看,那些蠻族計程車兵也是如此認為的。當此之際,位於村落兩旁的衛士守土有責,他們刀槍並舉,拚命地想要攔阻住這道“會說話的閃電”。——只可惜,他們卻沒能預料到此物竟有如斯

總頁數: 61357 1 .... 21716 21717 21718 21719 21720 .... 61357 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.