- 博客(25)
- 收藏
- 关注
原创 组合数取合数mod
using namespace std; const int MAXN = 200005; bool ispri[MAXN];int prime[MAXN];int priCnt; void CalPrime(){ priCnt = 0; memset(ispri,false,sizeof(ispri)); for(int i = 2;i < ...
2018-08-29 23:06:35 382
原创 AtCoder Beginner Contest 105 - C Base -2 Number (负进制转换)
https://abc105.contest.atcoder.jp/tasks/abc105_c 题意:给你一个n,让你转为【-2进制】。输出S POINT:假设为k进制。模拟正k进制转换可得以下操作。找到最小的非负整数x使得当前数减x能被k整除,这个x将作为新的最高位写到结果中,然后当前数减去x再除以k。负k进制也可以一样的操作。 #incl...
2018-08-17 13:31:17 368
原创 FZU 2082 - 过路费(树链剖分 边权)
http://acm.fzu.edu.cn/problem.php?pid=2082 边权模板。修改一个,查询区间。 #include <stdio.h>#include <string.h>#include <iostream>#include <algorithm>#include <vector>#i...
2018-08-14 13:26:23 199
原创 洛谷 P3384 - 【模板】树链剖分 (点权)
https://www.luogu.org/problemnew/show/P3384 #include <cstdio>#include <algorithm>#include <iostream>#include <string.h>using namespace std;const int N = 1e5+66;#d...
2018-08-14 11:55:42 245
原创 2018 “百度之星”程序设计大赛 - 初赛(A) - 度度熊剪纸条 (DP)
http://acm.hdu.edu.cn/showproblem.php?pid=6376 POINT:把连续的1都预处理出来。这样会有三种连续的1, 开头的,中间的,结尾的。首先确定哪个放在【前缀1的最后一部分】。如果是开头,开头就不用切,中间的要切2次才能放在前面,结尾切一次。类似: (中间1)(中间2)(中间3)(结尾)(开头) 如果是中间1,那么这个中间1只要切...
2018-08-13 10:47:16 191
原创 2018 “百度之星”程序设计大赛 - 初赛(A) - 度度熊学队列 (STL)
http://acm.hdu.edu.cn/showproblem.php?pid=6375 POINT:用map映射deque防止MLE。deque有insert和clear操作,方便deque库函数 #include <iostream>#include <stdio.h>#include <deque>#include ...
2018-08-13 10:34:17 181
原创 EOJ Monthly 2018.8 - D. Delivery Service(树上差分)
https://acm.ecnu.edu.cn/contest/103/problem/D/题意:给你一棵树,n-1条边和权值,给你q个起点和终点。你可以在【最初】无限次交换边的权值,问你最小花费是多少。POINT:这个问题其实就是求每条边被走过了几次。然后按照从多到少分别给从小到大的权值即可。前面一个问题就是树上差分问题。 #include <stdio....
2018-08-12 11:52:50 386
原创 牛客网暑期ACM多校训练营(第六场)- I Team Rocket (线段树)
https://www.nowcoder.com/acm/contest/144/I题意:给你n条l到r的线段。在给你q个询问,每次给你一个x,可以切断线段,问你每次切段了多少线段。不能离线做的。 POINT:线段树保存最小的L,最大的R。就很简单的东西。 #include <bits/stdc++.h>#define LL long long...
2018-08-11 23:09:45 208
原创 HDU 4022 - Bombing (multiset+离散化)
http://acm.hdu.edu.cn/showproblem.php?pid=4022题意:给你n个二维坐标点。按顺序问你m条和坐标轴平行的直线,能去掉多少点。去掉的点不重复计算。 POINT:点会重复,所以用multiset。还是很简单的,不说了。直接看代码吧。 #include <set>#include <map>#...
2018-08-10 22:06:45 203
原创 HDU 4022 - Alice and Bob (multiset)
http://acm.hdu.edu.cn/showproblem.php?pid=4268题意:Alice和Bob都有n张矩形,长宽都告诉你了。问你Alice能用多少矩形盖住bob的矩形。 盖住和被盖住的都只能用一次。 POINT:矩形的长宽会重复,矩形的长宽不能换。把两堆n个矩形分别按长排序。然后遍历Alice的矩形,把满足长覆盖的Bob的矩阵全部加入mu...
2018-08-10 22:03:04 240
原创 牛客网暑期ACM多校训练营(第七场)- J Sudoku Subrectangles
https://www.nowcoder.com/acm/contest/145/J题意:让你求出有几个矩阵,他的行和列中的每个字母都不一样。注意 只要求一行中都不一样。和一列中都不一样。 POINT:预处理出一个点能往上,往左延伸的长度。枚举矩阵的右下端点。对于如何把n*m*52*52的效率优化一个52去掉。看代码注解 #include &l...
2018-08-10 21:46:16 177
原创 牛客网暑期ACM多校训练营(第七场) - C Bit Compression (记忆化搜索)
https://www.nowcoder.com/acm/contest/145/C 题意:给你1<<n长度的01字符串,每次选择一个&^|操作,对两个两个相邻的数字进行。n次操作后,只会剩1个数字。若为1则记一次数,问你有几种方案。POINT:正解为把n<=4的答案存起来。这样记忆化就能过了。 还可以直接暴力模拟,不过要写的优秀一点的暴力...
2018-08-10 21:39:27 175
原创 HDU 6370 - 2018 Multi-University Training Contest 6 - Werewolf (搜索)
http://acm.hdu.edu.cn/showproblem.php?pid=6370题意:每个人只能说一句话,分别是x是狼人还是村民。问你有几个人是铁民和铁狼。 POINT:首先知道没人是铁民。我们只要找铁狼就行了。什么情况是铁狼呢:【找肯定不是村民的人】把所有说别人是村民的人和对象连边,即【A说B是村民,那么A给B连一个有向边】。称为民边。那我们就...
2018-08-09 10:14:54 179
原创 2018 Multi-University Training Contest 5 - Hills And Valleys (DP)
http://acm.hdu.edu.cn/showproblem.php?pid=6357 题意:你可以任意反转一个区间,问你之后可以得到的最长不递减子序列是多长。 优秀的题解 #include <iostream>#include <stdio.h>using namespace std;const int maxn = 1e5...
2018-08-09 09:57:37 180
原创 2018 Multi-University Training Contest 5 - Glad You Came (线段树暴力更新)
http://acm.hdu.edu.cn/showproblem.php?pid=6356题意: 就是每次给你用那个RNG操作,出来m个对区间进行更新的操作。 每个操作让你在L到R,把小于V的全部变为V. 让你求出把所有(i*a[I])异或起来的答案。POINT: 你可以暴力点直接线段树更新了。根本不用多加考虑。 记一个区间最小值,若V大于这个最小值,就更新下去。我本来n_...
2018-08-09 09:52:30 209
原创 2018"百度之星"程序设计大赛 - 资格赛 - 整数规划 (最小权匹配-KM算法)
http://acm.hdu.edu.cn/showproblem.php?pid=6346 #include <stdio.h>#include <iostream>#include <algorithm>using namespace std;#define LL long longconst LL N = 222...
2018-08-07 22:49:33 749
原创 2018"百度之星"程序设计大赛 - 资格赛 - 序列计数 (树状数组)
http://acm.hdu.edu.cn/showproblem.php?pid=6348开一个C数组。当要找长度为x的答案时,记录之前遍历x-1长度的a[i]的答案。然后一个个加入树状数组更新即可。因为随机:最长上升子序列的长度期望是 √n所以可以暴力的来。期望效率是 √n*n*log(n) #include <stdio.h...
2018-08-07 22:47:28 319
原创 牛客网暑期ACM多校训练营(第六场)- J Heritage of skywalkert (随机概率)
https://www.nowcoder.com/acm/contest/144/J 题意:给你一个操作,每次操作会产生一个a[i]。让你在n次操作之后,找到两个a[i],使得他们的lcm最大。POINT:这个操作相当于随机数,我们找出前30个最大数。然后暴力找。可以用nth_element #include <stdio.h>#inc...
2018-08-06 21:08:00 241
原创 2018"百度之星"程序设计大赛 - 资格赛 - 调查问卷 (状态压缩)
http://acm.hdu.edu.cn/showproblem.php?pid=6344 POINT:先n2的效率把每对问卷不同的答案状压压缩完。得到一个1<<m的数组保存了,x这个状态对应的所以答案不同的卷子有几对。 然后枚举答案,x和y 如果x&y>0,代表有贡献。 #include <stdio.h>#inc...
2018-08-06 21:00:20 290
原创 牛客网暑期ACM多校训练营(第五场) - F take (树状数组)
https://www.nowcoder.com/acm/contest/143/F 题意:一个人依次按顺序打开1-n号宝箱。若宝箱里有一颗比他手上还大的钻石,他会换走。给你宝箱i里Di大的钻石出现的几率是Pi,问你交换的期望。 POINT:总期望就等于每个宝箱被交换的期望和。第i个宝箱被交换的概率就是 前面1到i-1个宝箱都没有出现【比它大的钻石】的概率。你可...
2018-08-03 22:09:29 209
原创 牛客网暑期ACM多校训练营(第五场) - E room (二分图匹配 费用流)
https://www.nowcoder.com/acm/contest/143/E题意:给你n个寝室。每个寝室有4个人。给你第一年的n个寝室的人员分配。再给你第二年的n个寝室的人员分配。问你最少要让几个人换寝室。不是次数,是人数。 POINT:把新旧寝室分成二分图。旧寝室到新寝室要搬走的人数很好处理。这样就是n*n条边的二分图,有权值。 这样就是二分图最小权值匹配...
2018-08-03 22:00:34 229
原创 牛客网暑期ACM多校训练营(第五场) - A gpa (01分数规划)
百度一波01分数规划。 #include <stdio.h>#include <iostream>#include <string.h>#include <algorithm>using namespace std;#define LL long longconst int N = 1e5+55; struct...
2018-08-02 21:25:41 242
原创 2018 Multi-University Training Contest 4 - Problem B. Harvest of Apples (莫队)
http://acm.hdu.edu.cn/showproblem.php?pid=6333 题意:每次给你一个n和m,让你求。询问有1e5次,n,m<=1e5。 POINT:把要所求的式子变为f(n,m)。可得:f(n+1,m)=2*f(n,m)-C(n,m)f(n,m+1)=f(n,m)+C(n,m+1).这样,上下左右的递推公式便有了。就可以用莫...
2018-08-02 20:50:27 172
原创 BZOJ 2038 - [2009国家集训队]小Z的袜子(hose) (莫队算法)
https://www.lydsy.com/JudgeOnline/problem.php?id=2038 最经典的莫队算法问题。 #include <stdio.h>#include <iostream>#include <string.h>#include <algorithm>#include <queue>...
2018-08-02 20:41:09 169
原创 2018 Multi-University Training Contest 3 - Problem G. Interstellar Travel (凸包)
http://acm.hdu.edu.cn/showproblem.php?pid=6325 从凸包上面走会更优,所以答案的解肯定包括起点,终点,凸包拐点。假如凸包一条边上有多点共线,那么就要看边上的点编号是否比边的终点编号小,是的话放到答案里解会更优。因为题目求的是字典序最小。 #include <stdio.h>#include <iostrea...
2018-08-01 21:49:16 235
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人