关闭

codeforces 260 div1

346人阅读 评论(0) 收藏 举报
分类:

456D - A Lot of Games / 455B - A Lot of Games

tag: 博弈,trie+dp
A,B进行k轮游戏,每轮的败者取得下轮的先手。第一轮由A先手
思路:
例如, k=2
A若想赢,必须先败给B, 然后取得下一轮的胜利。则要求从初始位置(空串)既可以转移到必败,也可以转移到必胜。
用 canwin[i] 表示当前是否必胜
canlose[i] 表示能否转移到必败
先手必胜: canwin[i] = 1, canlose[i] = 0 or 1
先手必败: canwin[i] = 0, canlose[i] = 1
最后根据初始局面和k值,讨论结果。
用trie辅助dp

456E - Civilization / 455C - Civilization

tag:DSU + 树的直径
给了一个森林,然后两种操作,1是问某棵树的直径,2是合并两棵树(要求使得合并后的直径最小。
思路:
怎么表示直径?
开个数组,D[i] 就是以i为代表的树的直径。
维护直径的策略?
假设合并x,y, 用(u, v) 连接 x, y
显然,新的直径 = max (D[x] , D[y], f(u) + f(v) + 1)
f(u)指离u最远的点与u间的距离。。
这不是求直径的第一步吗。。
这个距离不会短于 ceil( D[x]/2 )!!
PS: 关于O(n)求树直径算法的证明

0
0
查看评论

codeforces #260 div1

A. Boredom time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output ...
  • u011645923
  • u011645923
  • 2014-08-09 22:49
  • 581

Codeforces Round #296 (Div. 1) E. Triangles 3000

http://codeforces.com/contest/528/problem/E 先来吐槽一下,一直没机会进div 1, 马力不如当年, 这场题目都不是很难,div 2 四道题都是水题! 题目大意:给n条直线,保证直线两两不平行,保证三条直线不公点。然后,随机挑三条直线,构成一个三角形,问...
  • kevinkitty_love
  • kevinkitty_love
  • 2015-03-19 17:56
  • 717

[Codeforces 277E][Round #170 div.1 E]Binary Tree on Plane

题目大意:平面上给出K个点,每个点可以向纵坐标比它小的点连边,边权为欧几里得距离,求一棵最小二叉生成树。 每个点只有一条入边,至多有两条出边,考虑使用最小费用最大流模型。 每个点拆成两个点i,i’,对于原图上的边u,v,u向v’连一条容量为1,费用为dis的边,源点向每个i连容量为2费用为0的边...
  • Sakai_Masato
  • Sakai_Masato
  • 2016-03-01 20:12
  • 526

Codeforces Round #286 div.1 D 506D D. Mr. Kitayuta's Colorful Graph【并查集】

题目链接:http://codeforces.com/problemset/problem/506/D 题目大意: 给出n个顶点,m条边,每条边上有一个数字,代表某个颜色。不同数字代表不同的颜色。有很多个询问,每个询问问有多少条纯种颜色的路径使得某两个点联通。 分析: 这个题一看就想用并查集...
  • u013912596
  • u013912596
  • 2015-01-30 01:40
  • 888

Codeforces Problemset 198E(#125 div.1 E)

问题描述   在一个二维平面上,你现在的位置在(x,y)同时你手上有一块磁铁。   在这个平面上,还有N块散落的磁铁,每个磁铁都可以抽象成一个点,你的目标是吸引最多的散落的磁铁。   每一块磁铁都有五个属性,x,y,m,p,r,分别表示磁铁的横坐标,磁铁的纵坐标,磁铁的重量,磁铁的吸引力,...
  • weixinding
  • weixinding
  • 2012-11-22 10:56
  • 1001

Codeforces #263 Div 1 简要题解

A. Appleman and Toastman题目链接http://codeforces.com/contest/461/problem/A题目大意给你nn个数构成的集合SS,每次操作你可以选择当前的一个集合,将它分裂成两个非空集合,每次操作后,你将每个集合里的数字之和加起来,若出现了大小为1的集...
  • qpswwww
  • qpswwww
  • 2015-06-25 16:47
  • 406

Codeforces Round #295 (Div. 1)

A. DNA Alignment 题意: 给定一个字符串s。 ……&(&(%……*&……)&*(&(*&%…………*%#%¥@¥*(%() 思路: 假设s和t中AGCT的出现次数为a,b,c,d和w,x,y,z次, 则h(s,t) = n *...
  • u013654696
  • u013654696
  • 2015-03-02 21:28
  • 302

Codeforces Round #295 (Div. 1) B. Cubes (STL+类拓扑)

最近课业繁重,这题写了两天。。昨晚睡觉的时候才突然想到了最后一点的解决方法。 不知道该不该叫做拓扑。。感觉还是挺像的。。就把标题称之为类拓扑了。。这题的方法是用map来标记状态是否存在,然后用类似拓扑的方法不断的找拿走后依然稳定的方块,我用了两个优先队列来维护,分别取最大和最小。然后就是模拟这个过...
  • u013013910
  • u013013910
  • 2015-03-05 16:10
  • 696

Codeforces Round #445 Div1 D:Symmetric Projections (计算几何)

题目传送门:http://codeforces.com/contest/889/problem/D题目大意:现在有n个点,求有多少条过原点的直线l,使得这n个点在l上的投影构成的可重点集关于某个点P对称。无数多条则输出-1。题目分析:设l=kx+b,则很明显这n个点在直线上的投影与b无关。由于投影构...
  • KsCla
  • KsCla
  • 2017-12-15 19:04
  • 120

Codeforces Round #265 (Div. 1) B Restore Cube

从第二行开始暴力排序 然后判断是否可以构成正方体
  • u013007900
  • u013007900
  • 2014-09-09 12:21
  • 444
    个人资料
    • 访问:143732次
    • 积分:4189
    • 等级:
    • 排名:第8706名
    • 原创:278篇
    • 转载:0篇
    • 译文:1篇
    • 评论:12条
    最新评论