
代码管理
lies@
这个作者很懒,什么都没留下…
展开
-
算法学习——数论——线性筛法求素数
目录1.解决问题2.代码1.解决问题以O(n)的时间复杂度求出n以内的所有的质数2.代码int primes[N],cnt; //存放所有的质数bool st[N]; //当前的数有没有被筛选过int get_peimes(int n){ for(int i = 2;i <= n;i++) { if(!st[i]) primes[cnt++] = i; for(int j = 0;primes[j] * i <= n;j++)原创 2020-08-23 11:50:36 · 160 阅读 · 0 评论 -
线段树的区间操作——板
区间操作struct node { int l,r,sum,lazy;} tr[maxn<<2]; //节点类型void pushup(int m) { //某个值的向上更新 tr[m].sum=tr[m<<1].sum+tr[m<<1|1].sum;}void build(int m,int l,int r) {//建树 tr[m].l=l; tr[m].r=r; tr[m].lazy=0; //lazy初始化为0 i原创 2020-07-20 23:10:50 · 142 阅读 · 0 评论 -
树状数组与线段树问题——基本原理
目录树状数组与线段树的关系树状数组1.核心应用树状数组与线段树的关系树状数组1.核心应用快速求前缀和原创 2020-07-12 09:58:36 · 223 阅读 · 0 评论 -
模板——归并排序
#include<cstdio>#include<cstring>#include<algorithm>#include<iostream>using namespace std;const int N = 1000010;int q[N],tmp[N];void merge_sort(int q[],int l,int r){ if(l >= r) return; int mid = l + r >>原创 2020-06-26 17:32:07 · 124 阅读 · 0 评论 -
模板——判断一个8位数是不是日期
#include<cstdio>#include<cstring>#include<algorithm>#include<iostream>using namespace std;int months[13] = {0,31,28,31,30,31,30,31,31,30,31,30,31};//判断是不是日期bool check(int date){ int year = date / 10000; int month原创 2020-06-26 17:10:43 · 1262 阅读 · 0 评论