ACM選修課1 數學問題

2021-10-05 01:15:54 字數 1027 閱讀 8412

memset()函式:memset(陣列名,1/0/-1,sizeof(a)),重置為1是陣列為任意正數

求乙個數的位數:(int)log10(n)+1,公式log10(i),i 必須為double型別

the hardest problem ever

#include

using

namespace std;

intmain()

else

b[i]

=a[i];}

}}return0;

}

rightmost digit

#include

using

namespace std;

intmain()

,,,,

,,,,

,};//由末尾數字與自身相乘可到到相乘的規律

while

(n--

)return0;

}//另一種更加直接的方法是使用快速冪

數的長度

#include

using

namespace std;

intmain()

return0;

}

最左邊的數

此題同樣需要推數學公式,直接暴力時間太長且資料太大無法存放,推理過程如下:

1、nn = d.*** * 10 (k-1),其中k表示nn的位數

2、等式兩邊取以10為底的對數得麼d.*** = 10(log10(nn)-(k-1))

3、帶入k得計算公式k = log10(nn)的整數部分+1 = (int)log10(nn)+1

4、得到d得表示式 (int)(10(log10(nn)-(int)log10(nn))

#include

using

namespace std;

intmain()

return0;

}

ACM選修課5 貪心法

部分最優,結果最優 需證明 貪心問題的特徵 1 乙個問題的最優解包含其子問題的最優解 2 整體最優解可以通過區域性的最優的選擇 老鼠的旅行 include using namespace std struct sa data 1001 intcmp const sa a,const sa b int...

ACM程式設計選修課 1081 堆(BFS)

time limit 1 sec memory limit 128 mb submit 26 solved 9 3110 310 5 3 1 21 3 51 2 3 4 5 3 12 1 2 42 5 yes noyes 嗯好久之前的題了。由於自己樹這方面不是很懂也沒學過資料結構,然後就沒敢做。趁著...

ACM學習筆記之 數學問題 素數

素數是非常簡單的乙個概念,所謂素數,是指恰好有2個約數 的整數,那麼這兩個數就是它本身和1。素數的判定方法有這麼幾種,1 簡單判定,2 飛馬測試 3 r 演算法 4 數域篩法 5 埃式篩法 6 區間篩法 那麼先從最簡單的判素方法學起 1.素性測試 給定整數n,請判斷n是不是素數 includeboo...