1.基础算法-模板
包括排序、二分、高精度、前缀和与差分、双指针算法、位运算、离散化、区间合并等内容。
阿斯卡码
这个作者很懒,什么都没留下…
展开
-
【1.基础算法-模板】高精度(java+python)
java+//加 import java.math.BigInteger;import java.io.*;public class Main { public static void main(String[] args) throws IOException{ BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); BigInteger a = ne原创 2021-09-18 18:25:17 · 69 阅读 · 0 评论 -
【1.基础算法-模板】3.二分(模板)
数的范围#include<bits/stdc++.h>using namespace std;int main(){ int n,m,q[100000+10]; cin>>n>>m; for(int i=0;i<n;i++)scanf("%d",&q[i]); while(m--) { int x; cin>>x; int原创 2021-07-12 09:13:14 · 328 阅读 · 0 评论 -
【1.基础算法-模板】9.区间和并(模板)
区间和并 遍历方法易懂#include<bits/stdc++.h>using namespace std;typedef pair<int,int> pii;vector<pii> jihe;void hebing(vector<pii> &jihe){ vector<pii> res; sort(jihe.begin(),jihe.end()); int st=-2e9,ed=-原创 2021-07-14 17:20:08 · 152 阅读 · 0 评论 -
【1.基础算法-模板】7.位运算(模板)
二进制中的1#include<bits/stdc++.h>using namespace std;int lowbit(int x)//10————1010 lowbit(10)=10=2 { return x&-x;}int main(){ int n; cin>>n; for(int i=0;i<n;i++) { int x,res=0; cin>>x;原创 2021-07-13 20:43:24 · 153 阅读 · 0 评论 -
【1.基础算法-模板】4.高精度(模板)
高精度加法#include<bits/stdc++.h>using namespace std;vector<int> add(vector<int> &A,vector<int> &B){ vector<int> C; int t=0; for(int i=0;i<A.size()||i<B.size();i++) { if(i<A.size())t+=原创 2021-07-12 10:58:08 · 307 阅读 · 0 评论 -
【1.基础算法-模板】2.归并排序(模板)
归并排序#include<bits/stdc++.h>using namespace std;void ms(int q[],int l,int r){ if(l>=r)return ; int mid=l+r>>1; ms(q,l,mid),ms(q,mid+1,r); int i=l,j=mid+1,k=0; int temp[100000+5]; while(i&l原创 2021-07-11 21:17:07 · 434 阅读 · 0 评论 -
【1.基础算法-模板】6.双指针(模板)
最长连续不重复子序列#include<bits/stdc++.h>using namespace std;const int N=100000+10;int a[N],s[N];int n;int main(){ cin>>n; for(int i=0;i<n;i++) scanf("%d",&a[i]); int res=1; for(int i=0,j=0;i<n;i++) {原创 2021-07-13 17:49:48 · 193 阅读 · 0 评论 -
【1.基础算法-模板】8.离散化(模板)
区间和 有去重函数unique#include<bits/stdc++.h>using namespace std;const int N=300000+10;typedef pair<int,int> pii;int presum[N]; //前缀和int val[N]; //存放离散化后的点的值 vector<int> point;//下标为离散化之后的点vector<pii> inster;//插入操作v原创 2021-07-14 12:38:42 · 219 阅读 · 0 评论 -
【1.基础算法-模板】5.前缀和与差分 (模板)
前缀和一维#include<bits/stdc++.h>using namespace std;const int N=100000+10;long long s[N];//全局变量s[0]=0;int main(){ int a[N],m,n,l,r; cin>>n>>m; for(int i=1;i<=n;i++)scanf("%d",&a[i]); for(int i=1;i<=n;i++)s[i]=原创 2021-07-12 23:27:03 · 320 阅读 · 1 评论 -
【1.基础算法-模板】1.快速排序 (模板)
快速排序#include<bits/stdc++.h>using namespace std;void qs(int q[],int l,int r){ if(l>=r)return ; int x=q[(l+r)/2],i=l-1,j=r+1; while(i<j) { do i++;while(q[i]<x); do j--;while(q[j]>x); if(i<j)s原创 2021-07-11 14:36:04 · 903 阅读 · 1 评论