【比赛总结】SWERC2011&NWERC2011

嗯,把这几周做的都整理一下。


Contest1:

SWERC 2011

A题:Alphabet Soup

1.预处理出一个next数组(与KMP的预处理做法一致),p-next[p]就是最小的循环节piece。循环节的个数为cnt = p/piece(通过转动这个循环节得到的圆盘与原来的圆盘一致)

2.答案就是  ->>                  (囧,就写个公式好挫)

ps:黑书上无意间翻到了。这东西叫burnside



B题:Coin Collecting

占个坑,还没搞定。=。=


C题:Cybercrime Donut Investigation

就是个水线段树...不过被这线段树坑了两天了...被这段挫代码坑惨了...RE了50多次....I don't wanna to see this code again...=.=....

bool operator <(const Node &o1)const{
    if (x == o1.x) return y >= o1.y;
    return x < o1.x;
}
这坨代码一眼看上去是没有问题的...但是在两个点重合的时候,a < b是成立的,b<a也是成立的,然后...然后就没有然后了...

RE出翔...


D题:Distributing Ballot Boxes

不是我过的。。不过应该是个水题。


E题:Game, Set and Match

记忆化搜索乱搞一下就行了...不过比赛的时候被tie-break坑了。


F题:Guess the Numbers

水题。中缀转后缀表达式。


G题: Non-negative Partial Sums

单调队列乱搞水过。


H题: Peer Review

水题。


I,J题不是我做的。。



Contest2:

NWERC 2011

A题:Binomial coefficients

不是我做的。


B题: Bird tree

读懂题意还是好做的。


C题:Movie collection

树状数组弄下就好。还拿了个FB=。=


D题:Piece it together

每个L-shape都是由一个黑格子和横向白格子,竖向白格子组成。

那么我们可以将黑格拆成两个点,分别用来连横向白格子与竖向白格子,然后就是二分图匹配了。匈牙利~


E题:Please, go first

水题。


F题:Pool construction

建立最小割模型:

1.对于边界的点u,连一条(s,u,INF),如果是hole,再连一条(u,t,f)

2.对于任意一个点,分别与相邻的4个点连一条b的边。对于hole,连一条(u,t,f),对于grass,连一条(s,u,d)


G题:Smoking gun

差分约束。


H题:Tichu

先搜顺子。(只有3种,0个顺子,1个,2个)然后就能直接出答案。

保存最小的即可。

不过要注意这种情况。(3+3+4),对于这种情况,(3+2,3+2)只需要2次!!!

还有就是。。。这题UVAlive上的有问题...hdu上过了,UVAlive死也过不了。。。

ps:应该是spj的问题。另一道需要spj的题UVAlive又死活过不了,后来按他的方式输出过了。


G题:Train delays

把每个点拆成60个点,分别表示从t时刻在u出发的期望。然后做dijkstra。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值