- 博客(18)
- 收藏
- 关注
原创 bzoj2406: 矩阵
直接求不好求想到网络流模型,对每行每列算和,二分答案,对每行建点xi,每列建点yi,从s到xi连[sum-mid,sum+mid]边,对每列yi到t连[sum-mid,sum+mid]边,代表行的点和代表列的点连[L,R]的边,跑上下界可行流(注释部分为求方案)。#include<iostream>#include<cstdio>#include<cstring>#include<algori
2017-08-31 11:04:27 314 2
原创 bzoj2405: 数字
打表找规律发现22680时出现循环,然后就随便搞搞。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;#define ll long longll n,m,a[22681];long long read(){ char ch=getchar();l
2017-08-31 10:58:10 328 1
原创 Codeforces Round #430 (Div. 2) D. Vitya and Strange Lesson
题目大意每次对数组异或一个值,求数组的mex(没在数组出现的最小非负整数)题解对所有数建一棵二进制trie树,记录修改的二进制位,贪心选择,如果修改的状态在原数组中没出现过,则之后的二进制位都可以与答案相同(即结果为0),如果当前节点子树没满,则可以与当前修改状态相同,否则只能与修改相反。(我好弱啊模板题调1小时)#include<iostream>#include<cstdio>#includ
2017-08-30 15:04:13 231 1
原创 Codeforces Round #430 (Div. 2) B. Gleb And Pizza
题目大意有多少圆在外面圆内里面圆外。题解求一下圆心到原点距离,然后加r减r判断即可。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<cmath>using namespace std;int read(){ char ch=getchar();int f=0;
2017-08-30 14:57:34 219 2
原创 Codeforces Round #430 (Div. 2) A. Kirill And The Game
是否存在,l<=a<=r,a*k==b,x<=b<=y. 暴力模拟,不要企图o(1)算。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int read(){ char ch=getchar();int f=0; while(ch<'0'|
2017-08-30 14:54:19 181
原创 bzoj3524: [Poi2014]Couriers&&2223: [Coci 2009]PATULJCI
主席树模板题。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int read(){ char ch=getchar();int f=0; while(ch<'0'||ch>'9') ch=getchar(); while(ch>='
2017-08-28 21:46:58 291 2
原创 Codeforces Round #428 (Div. 2) E. Mother of Dragons
题目大意n个城堡间有些城堡有墙,将k点能量分给城堡,每个墙的防御值为u*v,求防御值最大是多少。 (n<=40,k<=1000)题解分析一下(猜一下)结论知,平均分给最大团最大。求最大用类似A*的Bron-Kerbosch算法。 证明: #include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using
2017-08-28 13:18:13 260
原创 bzoj2989: 数列&&4170: 极光
二维线段树搞搞。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int read(){ char ch=getchar();int f=0; while(ch<'0'||ch>'9')ch=getchar(); while(ch>='
2017-08-25 10:12:41 229
原创 AIM Tech Round 4 (Div. 2) D. Interactive LowerBound
题目大意每个点的next为比它大的下一个数得位置,每次询问位置,告诉你valuei和next,求比x大的最小的数。题解考场上不会搞QAQ,2小时左右yy了个做法,然后疯狂wa on pretest 2,早上读读题才发现要判-1,改了还是wa 3,忽然发现自己输出了位置,gg。#include<iostream>#include<cstdio>#include<cstring>#include<
2017-08-25 08:27:58 694
原创 AIM Tech Round 4 (Div. 2) C. Sorting by Subsequences
题目大意每次选一个子序列,对它们进行排序,每个位置只能选1次,问最多选的次数。题解随便划一划就觉得是置换,然后就觉得很有道理,然后猜结论,然后xjb码一码,然后pp,然后ac。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int read(){ c
2017-08-25 08:23:07 421
原创 AIM Tech Round 4 (Div. 2) B. Rectangles
题目大意求选出在同一行或同一列颜色相同的格子,共有多少种选法。题解泥萌为什么都2^n什么的啊,我只会用组合数QAQ。 杨辉三角预处理组合数,设b[i]为第i行1的个数,则: ans+=∑i=1n∑j=1b[i]Cjb[i] ans+=\sum_{i=1}^n\sum_{j=1}^{b[i]} C_{b[i]}^j 列同理,注意去掉块数为1的。#include<iostream>#inclu
2017-08-25 08:17:55 408
原创 AIM Tech Round 4 (Div. 2) A. Diversity
题目大意改变最小元素个数是总种类数大于K。题解贪心选就行了。注意特判。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int read(){ char ch=getchar();int f=0; while(ch<'0'||ch>'9') c
2017-08-25 07:52:32 256
原创 1100: [POI2007]对称轴osi
将2相邻相同颜色的缩成1个,然后状压dp。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>using namespace std;int n,a[505],num[505],f[505][505],x,y,cnt;int main(){ scanf("%d",&n); for(i
2017-08-24 16:51:45 316
原创 bzoj4242: 水壶
码了一上午,真是菜啊。 每个建筑都有一块占领区域,当两块区域相连,对两个建筑连长度为建筑到这个点到另一个建筑距离的边,求一遍最小生成树,之后每个询问就求倍增lca维护边权最大值就可以了。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<queue>#include<vector>
2017-08-22 10:47:27 389
原创 bzoj3211: 花神游历各国&&3038: 上帝造题的七分钟2
注意到一个点修改几次后就会变成1,于是可以暴力修改,维护区间和,区间最值即可#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<cmath>using namespace std;long long read(){ char ch=getchar();long long f
2017-08-17 10:47:45 292
原创 bzoj 1878: [SDOI2009]HH的项链
好像只有我sb写了巨长巨慢的线段树。。。 将询问离线,记录每个颜色首先出现的位置和下一个出现的位置,维护颜色数前缀和,将询问按左端点排序。从1到n枚举,如果左端点是当前位置则查询sum[r]-sum[l-1] (sum[l-1]似乎等于0…),最后对i到nex[i] 减一(就是忽略当前位置)。#include<iostream>#include<cstdio>#include<cstring>
2017-08-14 09:46:23 165
原创 bzoj2625: [Neerc2009]Inspection
上下界网络流。 建源点s,汇点t,s向每个点连0-inf的边,每个点向t连0-inf的边,(u,v)间连1-inf的边,然后上下界最小流。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<queue>using namespace std;queue<int> q;const
2017-08-02 14:19:55 413
原创 bzoj1295: [SCOI2009]最长距离
枚举每个点bfs它到达每个点需要的移动障碍总数,算一下欧几里得距离即可。#include<iostream>#include<cstdio>#include<cstring>#include<algorithm>#include<queue>#include<cmath>using namespace std;queue<int> q1;queue<int> q2;int a[33
2017-08-02 13:21:42 302
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人