模板
z26y25j10
这个作者很懒,什么都没留下…
展开
-
Manacher‘s Algorithm(马拉车)
之前明明学会了的结果隔了一段时间就忘得七七八八了噫呜呜噫写篇blog记录一下方便以后回顾!代码:class Solution{public: string longestPalindrome(string s) { if(s=="") return ""; string ans=""; string ss=""; ss+='$';ss+='#'; for(int i=0;i<s.le.原创 2020-09-13 07:26:51 · 102 阅读 · 0 评论 -
模板2:求单个数的欧拉函数( O(sqrt(n)) )
#include<bits/stdc++.h>using namespace std;#define ll long longll eular(ll n){ ll ans=n; for(int i=2;i*i<=n;i++) { if(n%i==0) { ans-=ans/i; ...原创 2018-09-04 20:25:56 · 291 阅读 · 0 评论 -
模板1:分解质因数
#include<bits/stdc++.h>using namespace std;#define ll long longint cnt=0;ll num[405];void primeFactor(ll n){ while(n % 2 == 0) { num[cnt++]=2; n /= 2; } ...原创 2018-08-24 20:15:55 · 610 阅读 · 0 评论 -
模板3:线性筛求欧拉函数及素数
int phi[MAXN];int prime[MAXN];bool check[MAXN];int tot;void get_phi(){ phi[1]=1; for(int i=2;i<=MAXN;i++) { if(!check[i]) { prime[++tot]=i; ...原创 2018-09-23 22:42:01 · 122 阅读 · 0 评论 -
模板4:快速幂(加取模)
int quick_pow(int x,int a,int mod){ int ans=1,base=x; while(a!=0) { if(a&1!=0) { ans*=base; ans%=mod; } base*=base; ba...原创 2018-09-24 23:00:20 · 141 阅读 · 0 评论 -
模板6:__int128
void read(__int128 &x){ x=0; int f=1; char ch; if((ch=getchar())=='\n') x=x; else if(ch=='-') f=-f; else x=x*10+ch-'0'; while((ch=getchar())>='0' && ch<...原创 2018-10-29 21:55:43 · 433 阅读 · 0 评论 -
模板9:Kruskal求最小生成树
#include<bits/stdc++.h>using namespace std;#define ll long longint n,m;int u[50005];int v[50005];int w[50005];int r[50005];int p[50005];int cmp(const int x1,const int x2){ retu...原创 2019-07-30 00:19:36 · 73 阅读 · 0 评论 -
模板10:Floyd求两点间最短路
关键代码: for(int i=0;i<n;i++) { for(int j=0;j<n;j++) { d[i][j]=100000; if(i==j) d[i][j]=0; } } ....... for(int k=0;k<n;k++)...原创 2019-07-30 01:29:02 · 111 阅读 · 0 评论