1.時間複雜度
2.空間複雜度
3.資料溢位(long long有時可以解決)
**前部用陣列等資料結構暫存中間過程某值的一組答案,在**後部直接從這組答案中查詢,不需要再計算,節省時間。
用兩個一維陣列模擬二維陣列中相鄰的兩行,向下滾動,節省空間複雜度。
1.從1到sqrt(x)檢視x是否為素數,演算法時間複雜度為o(log(x))【可能有錯誤】。
2.區間內素數查詢:素數篩/線性篩【學了已忘】。
適用場景:求x的x次方的個位且x很大,比如1000000000^1000000000。
基本思路:用取餘概念
最佳思路:套用快速冪模板
什麼意思呢???再說typedef
long
long ll;
//計算x^y的最後mod位
ll quickmod
(ll x, ll y, ll mod)
return res;
}
ios::
sync_with_stdio
(false);
//關閉cin/cout同步流,關閉後cin速度可媲美scanf
8.1 sort#include
自定義cmp()函式的返回值要是bool,核心之處也是比較,因為sort預設是從小到大,所以在cmp如果還是要從小到大,那就a < b,返回值bool為true,不改變;而如果想要從大到小排,那麼就要return a > b,因為預設a小於b,所以此時返回的bool就是false,要改變排序。適用場景:資料量已知、每個資料的大小所在區間已知、資料有重複
時間複雜度:o(n)
空間複雜度:o(m)
#include
using
namespace std;
const
int maxn =
10010
;int n, t;
int vis[maxn]
;//桶
intmain()
bool flag =
true
;for
(int i =
0; i < maxn;
++i)
else
(" %d"
, i);}
return0;
}
易保研機試訓練營 基礎營 常見演算法
1.1string類的substring 方法用於擷取字串 string substring int beginindex 用途 返回乙個新字串,它是此字串的乙個子字串。該子字串始於指定索引處的字元,一直到此字串末尾 引數 beginindex 開始處的索引 包括 返回 指定的子字串 public ...
牛客寒假演算法基礎演算法訓練營2
1 座與重修費 題目描述 期末考試結束了,座發現很多人掛了大物,只能等著第二年重修,還要交400元的重修費。座突然想起有個學長和他講過,如果學校哪一年缺錢了,那一年的大物試卷就會特別難。現在 座有了所有人的成績,座想知道如果所有掛科的人都在第二年重修,學校能賺多少重修費?掛科是指一門課的分數小於60...
牛客寒假演算法基礎訓練營6
早知道這次題目這麼簡單就認真做了,最後一場沒心做,後面懶得想了,唉罪過罪過 1 煤氣灶 題目描述 小j開始打工,準備賺錢買煤氣灶。第一天,小j的工資為n元,之後每天他的工資都比前一天多d元。已知煤氣灶需要m元,求小j最少工作幾天才能買到煤氣灶。輸入描述 四個整數 n,m,d,x 分別表示小j第一天的...