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. USB接口大百科:看完你就分得清充电线了

    http://tech.ifeng.com/a/20151116/41507221_0.shtml

  2. Ant安装以及环境配置以及使用[windows环境]

    一.安装ant 官方主页http://ant.apache.org下载新版的ant. *下载对应的版本,解压到我们的硬盘. 二.配置环境变量 Window中设置ant环境变量: ANT_HOME    ...

  3. jQuery学习笔记(5)-事件与事件对象

    一.前言 主要讲解事件的绑定与触发 二.jQuery中添加事件 1.使用bind()方法绑定事件 <input id="btn" type="button" ...

  4. 伪装IP进行投票

    伪装IP投票说明 1,目的 在访问网页链接进行投票时,网站往往对同一个IP的投票次数进行了限制,无法连续重复投票.为此可以使用“火狐浏览器+IP修改插件”,通过人为设置浏览器IP,绕过网站IP检查,可 ...

  5. mongo 3.4分片集群系列之二:搭建分片集群--哈希分片

    这个系列大致想跟大家分享以下篇章: 1.mongo 3.4分片集群系列之一:浅谈分片集群 2.mongo 3.4分片集群系列之二:搭建分片集群--哈希分片 3.mongo 3.4分片集群系列之三:搭建 ...

  6. windows服务器监控多个tomcat运行状态

     第一步,修改tomcat默认的进程名 因为所有的tomcat项目的进程名默认都叫java.exe,所以需要修改tomcat容器bin目录下的setclasspath.bat.注释掉:(在set前加上 ...

  7. document.mozFullScreen

    非标准该特性是非标准的,请尽量不要在生产环境中使用它! 概述 返回一个布尔值,表明当前文档是否处于全屏模式. 语法 var isFullScreen = document.mozFullScreen ...

  8. 梦想CAD控件COM接口标注样式

    增加标注样式 用户可以增加标注样式到数据库,具体实现c#代码如下: private void CreateDim() { //返回控件的数据库对象 MxDrawDatabase database = ...

  9. Java基础(一)--操作符

    Java底层都是使用操作符来操作Java中的数据 常见的操作符:+.-.*./.= 优先级: 当一个表达式存在多个操作符时,操作符的优先级决定了计算顺序,这点在我们刚开始学习数学的时候就会了解到 如果 ...

  10. if语句,while语句,do whlie语句,循环语句

    总结: 1.定义数组并赋值: var arr=[1,2,3,4]; 2.通过下标访问数组: var str=arr[0]; 3.自定义数组 var arr=new Array(); 4.数组的赋值 a ...