-
个人简介
快读
inline bool isdigit_(char x){ return (x >= '0' && x <= '9') ? true : false; } namespace fast_IO { const int IN_LEN = 100000 , OUT_LEN = 100000; char ibuf[IN_LEN] , obuf[OUT_LEN] , *ih = ibuf + IN_LEN , *oh = obuf , *lastin = ibuf + IN_LEN , *lastout = obuf + OUT_LEN - 1; inline char getchar_() { return (ih == lastin) && (lastin = (ih = ibuf) + fread(ibuf , 1 , IN_LEN , stdin) , ih == lastin) ? EOF : *ih ++; } } using namespace fast_IO; inline int read(){ register int x = 0; char c = getchar_() ; c = getchar_(); while(isdigit_(c)){ x = (x << 1) + (x << 3) + (c ^ 48); c = getchar_(); } return x; }
void dijkstra(int s){ memset(dis , 0x3f , sizeof dis); memset(vis , 0 , sizeof vis); priority_queue < Node > q; q . push({s , dis[s]}); while(! q . empty()){ int u = q . top() . u ; q . pop(); if(vis[u] == 1) continue; vis[u] = 1; for(int i = head[u] ; i ; i = e[i] . nxt){ int v = e[i] . to , w = e[i] . w; if(dis[v] > dis[u] + e[i] . w){ dis[v] = dis[u] + e[i] . w; q . push({v , dis[v]}); } } } }
void spfa () { memset(dis , 0x3f , sizeof dis); queue < int > q; q . push(bx); vis[bx] = 1 , dis[bx] = 0; while (! q . empty()) { int u = q . front() ; q . pop(); vis[u] = 0; for (int i = head[u] ; i ; i = e[i] . nxt) { int v = e[i] . to; if (dis[v] > dis[u] + e[i] . w) { dis[v] = dis[u] + e[i] . w; if (! vis[v]) vis[v] = 1 , q . push(v); } } } }
并查集
int find(int x){ if(f[x] == x) return x; return f[x] = find(f[x]); }
int merge(int x , int y){ x = find(x) , y = find(y); f[x] = y; }
bool cmp(Edge x , Edge y){ return x . w < y . w; } void Kruscal(){ sort(E + 1 , E + m + 1 , cmp); for(int i = 1 ; i <= m ; i++){ int x = find(E[i] . from) , y = find(E[i] . to); if(x == y) continue ; f[x] = y; if(++ total >= n - 1) return; } }
void toposort(){ queue < int > q; for(int i = 1 ; i <= n ; i ++) if(du[i] == 0) q . push(i); while(! q . empty()){ int v = q . front() ; q . pop(); for(int u : G[v]){ du[u] -- ; if(du[u] <= 0) q . push(u); } } }
快速幂
#define mod 998244353 #define int long long int quick_pow(int x , int y){ if(y == 0) return 1; int a = quick_pow(x , y / 2); if(y % 2 == 0) return (a * a) % mod; else return (a * a * x) % mod; }
线性筛
int O_n_prime(){ for(int i = 2 ; i <= n ; i ++){ if(isPrime[i] == 0) prime . push_back(i); for(int j = 0 ; j < prime() . size() ; j ++){ isPrime[i * prime[j]] = 1; if(i % prime[j] == 0) break; } } }
vector < int > v[100005]; if(a[i] > n) continue; pos[a[i]] . push_back(i); int x , y ; cin >> x >> y; //二分下标 idx = () , idy = (); cout << idy - idx + 1 << endl;
单调队列
while(hd <= ed && dq[ed] . sum > tmp) -- ed; dq[++ ed] = {i , tmp}; while(i - dq[hd] . t >= m) ++ hd;
-
最近活动
- 2024.11.8 ~ 11.10 提高组第一周周赛补题 作业
- 2024.11.15 ~ 11.17 提高组第二周周赛 OI
- 10.25 CSP-J 模拟赛补题 作业
- 2024.10.25 图灵 CSP-J 考前模拟 ACM/ICPC
- 图灵编程10.20普及组补题场 作业
- 10.13普及组模拟赛补题场 IOI
- 2024.10.13 图灵 CSP-J 赛前第二次训练赛 ACM/ICPC
- 2024.9.30 图灵 CSP-J 普及组 试题 ACM/ICPC
- 8.25普及组补题场 IOI
- csp-j 第二次普及组模拟赛-补题 作业
- 2024年8月22日CSP-J初赛模拟赛 OI
- 24年8月21日 普及组模拟赛DAY1-补题 作业
- 2024年8月16日CSP-J初赛模拟赛-补题 作业
- 历年CSP初赛真题 作业
- 2024年8月16日CSP-J初赛模拟赛 OI
- 2024.8.9普及集训第七天(追光班) IOI
- 2024.8.7~8.8普及集训第五/六天(追光班) IOI
- 2024.8.6普及集训第四天(追光班) IOI
- 2024.8.5普及集训第三天(追光班) IOI
- 2024年8月2日 初赛练习(6)【小学组】-补题场 作业
- 2024.8.4普及集训第二天(追光班) IOI
- 2024.8.3普及集训第一天(追光班) IOI
- 8月4日普及组课上题目 作业
- 2024年8月2日 初赛练习(6)【普及组】 OI
- 2024年7月26日 初赛练习(5)【普及组】 OI
- 2024年7月5日 初赛练习(2)【普及组】 OI
- 2024.7.9 初赛练习 2【小学组】补题场 作业
- 2024年6月28日 初赛练习(1)【普及组】 OI
- 2024 六月 图灵初赛月赛 - 普及组 作业
- 2024年6⽉第三场周赛-普及组 IOI
- 2024年6月第二场周赛 普及组-补题 作业
- 2024年6⽉第二场周赛-普及组 IOI
- 2024年6月第一场周赛 普及组-补题 作业
- 2024年6⽉第一场周赛-普及组 IOI
- 2024图灵5月月赛 - 普及组 作业
- 2024 图灵五月月赛 - 普及组 ACM/ICPC
- 城阳信息学竞赛进阶组-补题 作业
- 2024年5⽉第三场周赛补题-普及组 作业
- 2024年5⽉第三场周赛-普及组 IOI
- 2024.5.9周赛补题-普及组 作业
- 2024年5⽉第二场周赛-普及组 IOI
- 2024图灵4月月赛 - 普及组 作业
- 2024 图灵4月月赛 - 普及组 OI
- 2024.5月 第一周周赛 - 普及组 作业
- 2024.5月 第一场 周赛 - 普及组 IOI
- 2024 4月 第三场周赛 - 普及\提高组 IOI
- 2024.4 月 第二场周赛 补题场 - 普及、提高 作业
- 2024年4月第二周周赛 - 普及\提高组 IOI
- 2022-2023年市北区区赛历年真题 - 小学组 IOI
- 2022-2023年市北区区赛历年真题 - 初中组 IOI
- 2024.4.8 普及、提高组 四月第一周周赛 作业
- 2024 4月 第一场周赛 - 普及、提高组 IOI
- 2024.3.31 图灵三月月赛 - 普及组 补题场 作业
- 2024.3.31 图灵三月月赛 - 提高组 补题场 作业
- 图灵三月月赛 - 提高组 赛题 ACM/ICPC
- 图灵三月月赛 - 普及组 赛题 ACM/ICPC
- 2024.3.25 周赛 补题 - 普及、提高组 作业
- 2024年3⽉第三场周赛-入门/提高 IOI
- 2024.3.18 周赛补题-普及/提高 作业
- 2024年3⽉第二场周赛-入门/提高 IOI
- 2024.3.11 周赛补题-入门/提高组 作业
- 2024年3⽉第⼀场周赛-入门/提高 IOI
- 2024 新春贺岁 思维模拟赛 div.2 补题场 作业
- 2024 新春贺岁 思维模拟赛 div.2 ACM/ICPC
- 2023.5.27 青岛市图灵编程杯 周赛 补题场 作业
- 2023.5.27 青岛市图灵编程杯 周赛 IOI
- 2023.4.1 青岛市图灵编程杯 周赛补题场 作业
- 2023.4.1 青岛市图灵编程杯 周赛 IOI
- 2023.3.25 青岛市图灵编程杯 周赛补题场 作业
- 2023.3.18 青岛市图灵编程杯 周赛补题场 作业
- 2023.3.11 青岛市图灵编程杯 小学组 周赛 IOI
-
Stat
-
Rating