A

=w=

B

题意:一个数轴上有n个整点,每个点都有一个速度,选一个点让他们集合,使得时间最少。

分析:

   直接三分

C

题意:给定一棵树,任意两个距离小等于二的点不能染相同的颜色,求最小颜色数和染色方案。 n<=2*10^5

分析:

   容易知道答案就是最大的度数+1

   至于方案直接暴搜出方案就行

D

题意:有n个足球队,每个队有两个选名字的方案,也就是直接给定了两个名字。所有球队不能有相同的名字。特殊的,如果有两个球队第一个名字相同,一个球队选了第二个名字,另一个球队不能选第一个名字。n<=1000

分析:模拟

   按照第一名字为关键字,那些第一名字相同的队伍都只能取第二名字

   对于剩下的集合,考虑那些只能选一个名字的,选择它,并更新当前已选名字

   这样剩余未定集合会越来越小,直至没有

   在这过程中,若有一只队伍两个名字都被占用,那么说明不合法

E

题意:给定一个n个点m条边的连通图,然后你要用k条路径覆盖所有的点,每条路径最多2*n/k向上取整个点,求一个方案。n<=2*10^5

分析:构造

   把其弄成一个树,然后dfs序,会有2*n-1个点,那么每次只需要走2*n/k个点就行了,注意最后可能有剩余走的机会,不能不走,随便走个点

F

题意:给丁一个n点m边的图,然后每条边有一个类别1或者0。

   你要按照给定的顺序走边:一条0的,然后把刚走的取反接起来,然后一直做。比如P代表0,B代表1,那么你要这么走:

   P, PB, PBBP, PBBPBPPB, PBBPBPPBBPPBPBBP, and so on.

   求从1开始最多能走多少条。如果答案>10^18,输出-1   n<=500

分析:bitset+倍增

   还是很吼的思路

   如果只考虑走2的次方步,那么应该是可以倍增出结果的

   对于一般情况,一定是由几个2的次幂构成的,这说明也可以dp求解!

   而且上面两种情况都有一种特点,那就是对于一条路径上的两段不同次幂路,开头一定是不同的,开头一定是0 1 0 1 0 1这种!

   f[i][j][0/1]表示当次幂边的长度<=2^j时候,以i点为起点,0/1为第一条边,能走的最远路

   那么有转移f[i][j][0/1]=max(f[k][j-1][0/1 xor 1]+(1<<j)) (其中i走2^j步可以走到k)

   这个转移的关键就是如何快速知道符合的k,那么很显然要预处理

   很容易想到g[i][j][0/1][k],表示从i点开始,以0/1边为起点,走2^j步,能否走到k点

   至于转移的话,需要枚举一个j-1层的中间点,作为i->j的转移,这样时间复杂度是O(n^3*60)会TLE

   这里就要用到bitset

   bitset<n> g[i][j][0/1] 就表示从i点开始,以0/1边为起点,走2^j步,能到达其他点的情况(1表示可以到达)

   转移的时候就是bitset的或操作,因为是位运算,所以很快

Codeforces Round #403(div 2)的更多相关文章

  1. Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals)

    Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) 说一点东西: 昨天晚上$9:05$开始太不好了,我在学校学校$9:40$放 ...

  2. 树的性质和dfs的性质 Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) E

    http://codeforces.com/contest/782/problem/E 题目大意: 有n个节点,m条边,k个人,k个人中每个人都可以从任意起点开始走(2*n)/k步,且这个步数是向上取 ...

  3. 2-sat Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) D

    http://codeforces.com/contest/782/problem/D 题意: 每个队有两种队名,问有没有满足以下两个条件的命名方法: ①任意两个队的名字不相同. ②若某个队 A 选用 ...

  4. Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) E Underground Lab

    地址:http://codeforces.com/contest/782/problem/E 题目: E. Underground Lab time limit per test 1 second m ...

  5. Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) D. Innokenty and a Football League

    地址:http://codeforces.com/contest/782/problem/D 题目: D. Innokenty and a Football League time limit per ...

  6. Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) C Andryusha and Colored Balloons

    地址:http://codeforces.com/contest/782/problem/C 题目: C. Andryusha and Colored Balloons time limit per ...

  7. Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) B. The Meeting Place Cannot Be Changed

    地址:http://codeforces.com/contest/782/problem/B 题目: B. The Meeting Place Cannot Be Changed time limit ...

  8. Codeforces Round #403 (Div. 2, based on Technocup 2017 Finals) A. Andryusha and Socks

    地址:http://codeforces.com/contest/782/problem/A 题目: A. Andryusha and Socks time limit per test 2 seco ...

  9. Codeforces Round #403 (Div. 1, based on Technocup 2017 Finals)

    Div1单场我从来就没上过分,这场又剧毒,半天才打出B,C挂了好几次最后还FST了,回紫了. AC:AB Rank:340 Rating:2204-71->2133 Div2.B.The Mee ...

  10. Codeforces Round#403 (Div. 1)

    唉,昨天晚上迷迷糊糊地去打cf,结果fst两题,掉回蓝了... A.Andryusha and Colored Balloons 题意:给定一棵树,任意两个距离小等于二的点不能染相同的颜色,求最小颜色 ...

随机推荐

  1. 记录从数据库把数据初始化mongodb缓存的一些坑

    在项目启动时,需要做一些项目启动后的预操作,比如初始化数据进缓存等等. 这时就需要写listener,等监听.在项目启动时把数据缓存进mongodb. 但是这会有一个问题.项目一般都是把各种bean交 ...

  2. 转 awr自动收集脚本

    1. remote get awr report #!/usr/bin/ksh ####sample: sh awr.sh 20170515 20170516 AWR ### default it w ...

  3. Redis远程连接

    一.打开CMD命令 二.打开Redis客户端安装地址

  4. 01-Entity FrameWork如何控制数据的变化

    在Entity Framework所有操作数据就是更新EF容器中的实体状态 public enum EntityState { Added = , Deleted = , Detached = , M ...

  5. lua_protobuf

    http://www.cocoachina.com/bbs/read.php?tid-227404.html

  6. JavaScript(第二部分)

    一.DOM获取元素节点的子节点  1.getElementsByTagName() 返回当前节点的指定标签名子节点 2.childNodes     表示当前节点的所有子节点 3.firstChild ...

  7. JavaScript(七)数组

    Array类型 1.创建数组 字面量 var arr = [];//不要在低版本的浏览其中创建字面量的时候最后 //一个item后面加 逗号 低版本会 再新建一个空的item 构造函数 var arr ...

  8. IDEA 提示Cannot resolve symbol

    将Springboot项目,构建为多个模块的时候,idea的有些类中报错Cannot resolve symbol 解决: 1.File->Invalidate Caches/Restart 清 ...

  9. Props、State、Refs 与表单处理

    我们也了解到 React Component 事实上可以视为显示 UI 的一个状态机(state machine),而这个状态机根据不同的 state(透过 setState() 修改)和 props ...

  10. 【C++】智能指针简述(四):shared_ptr

    在开始本文内容之前,我们再来总结一下,前文内容: 1.智能指针采用RAII机制,在构造对象时进行资源的初始化,析构对象时进行资源的清理及汕尾. 2.auto_ptr防止拷贝后析构释放同一块内存,采用& ...