c 的奇技淫巧

2021-08-08 17:15:37 字數 934 閱讀 9947

關於陣列

數論演算法技巧

stl其他

while(scanf(「%d%d」,&n,&m)!=eof) 等價於

while(scanf(「%d%d」,&n,&m)==2)

前者eof為檔案結束符,較保險;

後者 == 後的數字為輸入的變數的個數;

不能只寫while(scanf(「%d%d」,&n,&m)) 這樣無法結束讀入

wwq大佬教的,希望我不要和他一樣打錯手讀2333

inline

void read(int &x)

開陣列 dp[n][m], dp[m][n] 在應用時是一樣的

若n>m 後者查詢更快

(a+b)%k=(a%k+b%k)%k;

(a*b)%k=((a%k)*(b%k))%k

(a/b)%k=(a*b^(k-2))%k=(a%k*(b^(k-2)%k))%k

int ask(int x)

return ans;

}

1.始終讓l合法,r不合法,答案輸出l,

r在題目找到最不可能合法的情況後,再進一步使之不合法(例如 跳石頭 可以讓r等於 河道長度+1)

2.while(r-l>1)

是預設大根堆!!!!!!!

只能用cin,cout;

想加速可以用scanf讀char陣列,賦值給string

在末尾插入元素 s.push_back(c);

可以對已經使用過的位置直接修改

string a

;cin>>a

;a[0]='b';

cout<;

在cpp中 1<< i 預設是int,因為1預設是int

強轉long long要寫成 1ll<< i

C 之奇技淫巧

typedef struct data 0 pdata 0 typedef struct data 1 pdata 1 結構體data 0與data 1在性質上沒有什麼不同,它們的size是相等的,都是8.但在用法上有很大區別。例 pdata 0 stack0 pdata 0 malloc max ...

git 奇技淫巧

例如 1.0.0 git tag a 1.0.0 m 1.0.0 版本的備註資訊.複製 git push origin tags 複製 例如 1.0.0 git tag d 1.0.0 複製 刪除遠端標籤需要先刪除本地標籤,再執行下面的命令 git push origin refs tags 1.0...

Git的奇技淫巧

git常用命令集合,fork於tips專案 git是乙個 分布式版本管理工具 簡單的理解版本管理工具 大家在寫東西的時候都用過 回撤 這個功能,但是回撤只能回撤幾步,假如想要找回我三天之前的修改,光用 回撤 是找不回來的。而 版本管理工具 能記錄每次的修改,只要提交到版本倉庫,你就可以找到之前任何時...