原创 Project Euler 11-15題

話說剛剛纔注意到Project Euler的提交時間記錄的是UTC 第11題 題目來源ProjectEuler 這一題與第8題類似,不過這個求的是八個方向上的最值。雖然這個也可以有類似移動窗口的做法,但是考慮到長度只有四,

原创 Project Euler 16-20題

第16題 題目來源ProjectEuler 這個題是求21000 在十進制表示下各位數字的和。 我沒想到很好的算法,只想到一個O(n2) 的高精度處理,直接求出結果,再一位一位加起來。 int main(){ int num

原创 Project Euler 31-35題

第31題 題目來源ProjectEuler 這一題求200可以由1,2,5,10,20,50,100,200以多少種不同的方式相加而成。 將硬幣分別標記爲f[1]=1;f[2]=2;f[3]=5;f[4]=10;f[5]=20;f[

原创 關於二維情況下另類切蛋糕問題的思路

參考源:3Blue1Brown:【官方中配】分圓問題,詭異的數列規律:解答篇 這個情況下,我們不再考慮切幾刀,而是圓周上有n個點,每一刀的刀痕都必須通過圓周上這n個點中的兩個點的情況。求最大分割數。 這個問題有一個非常有趣又詭異的答案

原创 Project Euler 21-25題

第21題 題目來源ProjectEuler 這個題定義了一個函數d(x)=∑divisori ,其中divisori 是x 的因子且!=x 求小於10,000的所有滿足d(d(a))==a 的a 的和。 首先求所有數不爲本身的因子

原创 Project Euler 6-10題

爲什麼感覺6-10題比1-5題暴力了好多,沒什麼好的可改進點-_-!!! 第6題 題目來源ProjectEuler 這個題求(∑ni=1i)2−(∑ni=1i2) ,是O(1) 的。 int main(){ long lo

原创 弄一個博客記錄一下大學的學習生活

新手上路,多多指教 不定期開坑,不一定填坑

原创 關於立體圖形切n刀最多切多少塊的結論及推導

思路主要參照了知乎這個話題下德安城和安堇然的回答。自己再寫一遍主要是爲了加深理解。 首先直接給出結論: 在d維空間內,對於被切中的d維立體,每一刀將造成d-1維的劃痕,將該d維立體分成兩部分,則切n刀後得到的塊數最多爲: f(d,n)

原创 Project Euler 41-45題

第41題 題目來源ProjectEuler 該題求由1-n的數字的全排列構成的數中,最大的素數。 顯然n小於等於九。而若n=9,則∑9i=1i=45 ,是9的倍數,所以n≤8 。 我們利用prev_permutation()函數

原创 關於約瑟夫問題(Josephus Problem)

這個問題是以弗拉維奧·約瑟夫斯命名的,他是1世紀的一名猶太歷史學家。他在自己的日記中寫道,他和他的40個戰友被羅馬軍隊包圍在洞中。他們討論是自殺還是被俘,最終決定自殺,並以報數的方式決定誰殺掉誰。約瑟夫斯說服了一個人,他們將向羅馬軍隊投降

原创 Project Euler 1-5題

第1題 題目來源ProjectEuler 這個題求的是嚴格小於1000的數中,是3或5的倍數的數的和。(剛開始理解錯below的意思了,把1000算進去了,尷尬) int main(){ int ans=0; for

原创 Project Euler 26-30題

第26題 題目來源ProjectEuler 這一題是求1i,∀i∈[2,1000) 的所有結果的十進制小數表示下具有最長循環節的i 。 我將在我的算法中定義有限小數也是循環節爲1的循環小數,例如0.25=0.25(0) 回憶列豎式

原创 Project Euler 46-50題

第46題 題目來源ProjectEuler 這個題求滿足如下條件的最小的數x: 1.是奇數 2.是合數 3.不能表示爲x=p+2∗y2 ,其中p爲質數,y爲正整數。 先篩出一個範圍內的質數,比如1~100w,然後求其中的

原创 Project Euler 36-40題

第36題 題目來源ProjectEuler 這一題求的是小於1,000,000的所有數中,在十進制和二進制表示下都是迴文數的數的和。 枚舉每個數,檢驗即可,複雜度O(nlogn) 另一種方法,可枚舉前一半的位上的數字,然後將整個數

原创 Project Euler 52題 Permuted multiples

題目來源ProjectEuler 題意非常簡單,找出一個數x,使得x,2x,3x,4x,5x,6x包含的數字相同但是順序不同。 其實如果想到了17=0.142857⋯17=0.142857⋯ ,就會想到142857可能是答案,但是不敢