ACM-ICPC
文章平均质量分 75
我的妹妹syf
我的妹妹不可能那么胖
展开
-
UVA 1093 Castles
题目大意:太长不想说,自己看吧。 发现留守和死亡是没有区别的,那么把它们一起考虑。 考虑只有一个点的情况,那么这个点需要的人数就是max(a,b+c),但是死亡的人数是b+c 那么我们先把需要的人数和死亡的人数做一个pair。 然后考虑枚举起点,算总的需要人数。 每个点的死亡人数就是它的死亡人数加上所有子树的死亡人数。 但是这个点的需要人数并不是这个。不难发现,当完成一个子树后,多余的原创 2017-07-11 10:54:23 · 582 阅读 · 1 评论 -
2009-2010 ACM-ICPC, NEERC, Southern Subregional Contest B kakuro
神奇搜索题。 题目大意: 填数游戏。格子有墙壁和空格两种。如果墙壁的下方/右方不是墙壁,那么上面会有一个数,表示这个墙壁沿竖直/水平方向一直走到下一个墙壁上空格的数总和要和这个数相同,同时这条路径上不能有相同的数。找出任意一种合法的方案。填的数在1-9之间。 显然是搜索剪枝题,没什么好说的,但是有几个比较重要的剪枝,比如: 1、用2进制位表示哪些数已经出现过了。这样我们就能用一个0-1原创 2017-07-08 10:39:10 · 571 阅读 · 0 评论 -
4428: [Nwerc2015]Debugging调试
#include #define N 1000100 using namespace std; long long f[N],x,y; int n; long long dfs(int p){ if(f[p]!=-1) return f[p]; if(p==1) return f[p]=0; f[p]=x+y*(p-1); for(int i=2;i<p;i=(p-原创 2017-10-01 20:05:42 · 292 阅读 · 0 评论 -
NWERC 2015B/bzoj 4426 Better Productivity
#include #define N 210 using namespace std; struct Node{int x,y;}a[N],b[N],c[N]; int dp[N][N]; int n,p,B,C; inline bool cmp1(Node a,Node b){ if(a.x!=b.x) return a.x<b.x; return a.y<b.y; } inline boo原创 2017-10-02 18:47:32 · 358 阅读 · 0 评论