自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 学习笔记(数论)

CF1139D 最后一个整除分块 + 前缀和 复杂度O( sqrt(m) ) 预处理O(m),所以没必要整除分块了~ #include <bits/stdc++.h> #define ll long long #define endl '\n' using namespace std; const int maxn=1e5+5; const int mod=1e9+7; int prime[maxn],inv[maxn],mo[maxn],cnt=0; bool vis[maxn]; vo

2020-09-29 13:41:10 105

原创 学习笔记(DP) 刷题日记

Codeforces 1268B 贪心的思想,从右往左把每列都取完或剩下一个(取余2)。 观察画图可以发现,若剩下一个的两列之间间隔列数为偶数的话,是可以通过最底下一行使得这两列剩下的那一个合并使得贡献加1。 #include <bits/stdc++.h> #define ll long long #define endl '\n' using namespace std; const int maxn=3e5+5; stack <int> s; int main(){ ios:

2020-09-06 15:05:44 155

原创 学习笔记(DP)— 状压

状压DP练习 1.SCOI2005互不侵犯 dp[i][j][k]表示当前第i行,状态为j,已用k个国王的方案数 其中j是一个二进制串,表示当前各个位置是否拜访国王 枚举当前行与上一行,判断两行摆放的情况是否合法 预处理:枚举单行情况,若没有2个相邻的1 ( i & (i << 1) == 0 ),则该情况合法,利用lowbit,计算出该种合法情况有几个国王(几个1),s数组用来存状态,sum数组用来存该状态1的个数 #include <bits/stdc++.h> #def

2020-08-30 16:17:18 93

原创 学习笔记(DP)— 背包问题

[DP] 背包问题 ———————————————————————————————————— 注意枚举顺序!! for (int k = 1; k <= ts; k++) // 循环每一组 for (int i = m; i >= 0; i--) // 循环背包容量 for (int j = 1; j <= cnt[k]; j++) // 循环该组的每一个物品 if (i >= w[t[k][j]]) dp[

2020-08-29 17:04:49 110

原创 学习笔记(数据结构)— 主席树

** 学习笔记-主席树 ** 用途:查询区间第k大 核心思想:前缀和,权值线段树 过程 (1)对于每一个点都建一颗权值线段树,表示到当前节点各个数出现了几次 (2)每次查询两棵线段树相减,类似前缀和,得出当前区间内各个数出现的次数,再利用线段树的结构进行类似二分的查找即可 优化 对每个点都建树显然容易 memory limit exceeded 思考发现,一个点只会对上一个点的权值线段树中每一层的...

2020-01-18 17:30:30 117

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除