上一页 1 ··· 11 12 13 14 15 16 17 18 19 ··· 21 下一页
摘要: 和线段树一样,模板中的函数请根据需要自己补充完成,使用前要建树,其实只是多了建点 make\text{make}make 操作。 同时你也可以通过 DOP_S_T_TDOP\_S\_T\_TDOP_S_T_T 更改线段树维护的基本类型。 #define DOP_S_T_T int 上面的基础类型是 阅读全文
posted @ 2021-08-30 21:58 luckydrawbox 阅读(8) 评论(0) 推荐(0)
摘要: 线段树灵活多变,所以模板中的函数请根据需要自己补充完成。 同时你也可以通过 S_T_TS\_T\_TS_T_T 更改线段树维护的基本类型。 #define S_T_T int 上面的基础类型是 int\text{int}int。 使用前要 build\text{build}build,change\ 阅读全文
posted @ 2021-08-30 21:47 luckydrawbox 阅读(6) 评论(0) 推荐(0)
摘要: 预处理 使用前,请根据需要更改字典树标准 standardstandardstandard。 如果应用范围为 262626 个字母,你可以把 standardstandardstandard 设为 a。 如果应用范围为 010101 串,你可以把 standardstandardstandard 设 阅读全文
posted @ 2021-08-30 13:33 luckydrawbox 阅读(11) 评论(0) 推荐(0)
摘要: 预处理 使用前,请根据需要更改堆类型和比较函数 cmp\text{cmp}cmp。 #define H_T int bool cmp(H_T x,H_T y){ return x>y; } 以上实现了一个 int\text{int}int 类型的大根堆。 操作 #define H_T int str 阅读全文
posted @ 2021-08-30 00:46 luckydrawbox 阅读(10) 评论(0) 推荐(0)
摘要: 目录 ST 表 最长不上升子序列 动态动态规划 DDP 阅读全文
posted @ 2021-08-30 00:04 luckydrawbox 阅读(8) 评论(0) 推荐(0)
摘要: LIS(n,a):求 a1∼na_{1\sim n}a1∼n​ 中的最长不上升子序列的长度。 int LIS(int n,int *a){ int dp[N],l=1,p; dp[1]=a[1]; for(int i=2;i<=n;i++) if(dp[l]>=a[i]) dp[++l]=a[i]; 阅读全文
posted @ 2021-08-30 00:02 luckydrawbox 阅读(9) 评论(0) 推荐(0)
摘要: 题意 有一个正整数 nnn,找出它的所有因数,两个人轮流取走一个它的因数,取不到因数的人失败。 如果先手胜利,输出 Yes,否则输出 No。 分析 显然,当一个数的因数有奇数个时,先手会获胜;当一个数的因数有偶数个时,后手会获胜。 于是,这道题就变成了:判断一个数的因数个数是否为奇数。 于是它就变成 阅读全文
posted @ 2021-08-29 23:07 luckydrawbox 阅读(6) 评论(0) 推荐(0)
摘要: 题意 一个长度为 nnn 的序列,每个元素有两个权值 hi,aih_i,a_ihi​,ai​,从这个序列中选出一个子序列,并满足以下要求: hih_ihi​ 单调递增。 在满足上一条的情况下,这个子序列的 aia_iai​ 之和最大。 分析 设 dpidp_idpi​ 表示以 iii 结尾的符合要求 阅读全文
posted @ 2021-08-29 15:23 luckydrawbox 阅读(4) 评论(0) 推荐(0)
摘要: 使用前要确定操作运算,要保证这是一个可重复贡献的运算,如 max⁡,min⁡,gcd⁡\max,\min,\gcdmax,min,gcd 等。 int op(int x,int y){ return max(x,y); } 把上面的 max⁡\maxmax 改成其他运算就可以了。 使用前要初始化,i 阅读全文
posted @ 2021-08-29 12:08 luckydrawbox 阅读(7) 评论(0) 推荐(0)
摘要: 目录 快速排序 归并排序 逆序对 阅读全文
posted @ 2021-08-28 23:40 luckydrawbox 阅读(10) 评论(0) 推荐(0)
上一页 1 ··· 11 12 13 14 15 16 17 18 19 ··· 21 下一页