究極卡常神技

2022-06-04 03:48:06 字數 1082 閱讀 5600

return x-x/p*p
char buf[1<<22],out[1<<22],*p1=buf,*p2=buf;

ll p3=-1,ff=0;

#define getchar() (p1==p2)&&(p2=(p1=buf)+fread(buf,1,1<<21,stdin),p1==p2)?eof:*p1++

inline void flush()

inline void check()

inline void putchar(char a)

inline ll read()

inline void writ(register ll x)

if(x>9) writ(x/10);

putchar(x%10+'0');

}···

······**

輸出·······

flush();

要點,快速取模,快速getchar,把buf開大有時也能降常

函式(非遞迴)不要忘記加inline
在定義變數前寫上register,用於把變數放到cpu暫存器中,適用於一些使用頻繁的變數(比如迴圈變數)

有時候不要定義全域性變數,在主函式內用register,並且在函式中可以盡量用register

可以降常,具體性質,注意事項不明,慎用
在for中,不要i++,要++i
!=可以用^替代,<=、《等有時也可以
使用^48代替
int n=1//一般做法

int n(1)//優化做法

int abs(int n)
int max(int a,int b)

int min(int a,int b)

boolean isfactorialoftwo(int n)

氣泡排序究極奧義

原理 兩個for迴圈,外層for迴圈控制比較輪數 趟數 內層for迴圈比較每一輪中的前後兩項 次數 內層for迴圈每比較一輪就產生乙個當前迴圈的最大值 由於個別陣列本身的排列的特殊性 導致根本不需要將所有的趟數都排列完才可以 如下陣列 只需要排列一次即可 var arr 2,1,3,4,5,6,7,...

KMP演算法 究極版

翁振宇 字串匹配 kmp演算法 演算法實現一 字串匹配的關鍵在於減少匹配次數。而kmp演算法的核心思想就是匹配陣列,根據匹配陣列的值來排程匹配字串的索引減少多餘的排程。匹配陣列就是字串具有的相同字首 字尾的最大值。比如對於字串 ababacbbb 有 ta baba cbbb 0next 10 01...

Mysql優化 究極終章

我們的sql和索引的優化大概就這麼多,然後我們再來看一下表結構的優化是怎麼樣的。首先我們需要選擇最合適的資料型別,那麼什麼叫合適呢?主要有4點 第一,可以存在我們字段資料的最小的資料型別。第二,如果可以使用int代替varchar等資料型別,最好用int,因為int的處理比varchar等資料型別的...