A

=w=

B

QvQ

C

题意:在一个格子图里给出一个路径 里面有UDLR四种移动方向 问 我在格子路径里面最少选几个点 可以让我沿着格子路径走 其实是在相邻的点与点之间走最短路

分析:贪心+模拟

  尽可能选取长的一段,满足这一段里L和R只出现一种,U和D只出现一种

  模拟即可

D

题意:给出n个字符串,每个字符串长为k(n*k<=100000),每个字符串都有一个权值(可正可负可为0),选取若干个字符串组成一个回文串,让这个回文串权值和最大,输出这个最大权值和

分析:贪心+map+vector

  先用map把所有字符串hash一下

  把所有相同字符串对应的不同权值全部放入vector中并从大到小排序

  要先明确一点,构成字符串,可以是完全左右对称的,也可以中间有一个自身是回文串的子串

  从前到后遍历每个第一次出现的字符串,得到他的反转串,若反转串map里没有则跳过

  若反转串存在且和自身不同(也就是本身不是回文串),记两个字符串编号分别为u和v

    从前到后遍历u和v对应的vector,从大到小将他组成一对,即g[u][0]+g[v][0],g[u][1]+g[v][1]....,直到终止或者某两个和为负数

  若反转串存在且和自身相同(也就是本身是回文串),记这个字符串编号为u

    看这个字符串的所有权值中正的有多少个

      若为偶数个,什么都不用想,直接两两配对

      若是奇数个,考虑两种情况

         若最后一个正数加上下一个负数的结果为负数,那么这最后一个正数可以作为预备中间数(弄个变量t不断更新最大值,t=max(t,v[i])),前面配对

         若最后一个正数加上下一个负数的结果为正数,那么这个奇数权值可能作为两边的也可能作为中间的,我们不妨先把其当作两边的,用-v[i+1]表示如果该字符串作为中间字符串能给结果带来多少增益,那么t=max(t,-v[i+1])

  ans=sum+t(t是某个自身回文串在中间给结果带来的增益)

E

题意:n个橘子,每个橘子都有自己的片数a[i],每次可以将一个橘子或者切成的一部分对半分,如果是奇数就对半分成相邻的两个数。最后分出的许多块橘子中取最大的k块,让这k块橘子中最小的片数最大。(n<=1e6,a[i]<=1e7,k<=2e9)

分析:二分答案

  先二分答案mid

  如果一般的判定,扫一遍a数组,判断每个a[i]切成>=mid的最多能有多少块,这样复杂度是nlognlogc(会TLE)

  判定可以这样考虑

  设f[i]表示片数为i的橘子有多少块,那么f[i/2]+=f[i],f[(i+1)/2]+=f[i] 这里可以先开始通过O(C)的预处理得到

  然后弄个后缀和,二分的时候就可以根据后缀差得到对应mid的答案,判定时间是O(1)

  总的时间复杂度是O(C)

F

题意:给定2k个队伍分别住在2k个城市里,需要设定若干个城市,然后选取2个队伍要在它们的最短路径上设一个城市作为休息站。要求设立最少的休息站,然后输出如何安排2个队伍

分析:结论题

  其实这个休息站只需要1个

  将那些有队伍的城市权值设为1,其它城市权值设为0

  那么这个休息点就是这棵树的权值重心(也就是说某个点为根,所有子树的权值和<=所有点权值和的一半)

  所以只需要找到这个休息点就找到了答案

  至于方案,可以以这个休息点为根,dfs,先遍历到的k个点放一边,后遍历到的k个点放在另一边(因为是权值重心),所以这样一一对应是合法的

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

  1. Codeforces Round #389 Div.2 D. Santa Claus and a Palindrome

    time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standa ...

  2. Codeforces Round #389 (Div. 2,) B C

    考完复变之后沉迷联盟不能自拔...明天就开始抢救计组 ... B 一个人装错了键帽 选择几个pair 把pair里面的键帽交换 并且每个键帽最多可以换一次 给出按键序列和输出序列 判断是否可以 如果可 ...

  3. Codeforces Round #389 (Div. 2, Rated, Based on Technocup 2017 - Elimination Round 3) C

    Description Santa Claus has Robot which lives on the infinite grid and can move along its lines. He ...

  4. Codeforces Round #389 (Div. 2, Rated, Based on Technocup 2017 - Elimination Round 3) B

    Description Santa Claus decided to disassemble his keyboard to clean it. After he returned all the k ...

  5. Codeforces Round #389 (Div. 2, Rated, Based on Technocup 2017 - Elimination Round 3) A

    Description Santa Claus is the first who came to the Christmas Olympiad, and he is going to be the f ...

  6. Codeforces Round #389 (Div. 2, Rated, Based on Technocup 2017 - Elimination Round 3) D. Santa Claus and a Palindrome STL

    D. Santa Claus and a Palindrome time limit per test 2 seconds memory limit per test 256 megabytes in ...

  7. Codeforces Round #389 (Div. 2, Rated, Based on Technocup 2017 - Elimination Round 3) E. Santa Claus and Tangerines

    E. Santa Claus and Tangerines time limit per test 2 seconds memory limit per test 256 megabytes inpu ...

  8. Codeforces Round #389 Div.2 E. Santa Claus and Tangerines

    time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standa ...

  9. Codeforces Round #389 Div.2 C. Santa Claus and Robot

    time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standa ...

  10. Codeforces Round #389 Div.2 B. Santa Claus and Keyboard Check

    time limit per test 2 seconds memory limit per test 256 megabytes input standard input output standa ...

随机推荐

  1. java 读取mysql库表数据

    import java.sql.Connection; import java.sql.DriverManager; import java.sql.PreparedStatement; import ...

  2. php中strstr、strrchr、substr、stristr四个函数的区别总结

    php中strstr.strrchr.substr.stristr四个函数的区别总结 投稿:junjie 字体:[增加 减小] 类型:转载 时间:2014-09-22我要评论 这篇文章主要介绍了php ...

  3. Javascript&Jquery获取浏览器和屏幕各种高度宽度方法总结及运用

    <js篇> Javascript获取浏览器和屏幕各种高度宽度方法总结 document.body.clientWidth       //网页可见区域宽(body) document.bo ...

  4. [转]Jquery中AJAX错误信息调试参考

    下面是Jquery中AJAX参数详细列表: 参数名 类型 描述 url String (默认: 当前页地址) 发送请求的地址. type String (默认: "GET") 请求 ...

  5. 自写图片遮罩层放大功能jquery插件源代码,photobox.js 1.0版,不兼容IE6

    阿嚏~~~ 话说本屌丝没啥开发插件的经验,可是天公不作美,公司须要让我自己开发个图片放大的插件 但公司老大的话,宛如吾皇之圣旨,微臣必当肝脑涂地,莫敢不从啊~~~ 于是乎,作为一个超级小白,本人仅仅能 ...

  6. 常用aliyun公共资源列表

    公共DNS      223.5.5.5      223.6.6.6   源软件镜像站点      mirros.aliyun.com   NTP服务器 unix like      ntp1-7. ...

  7. 什么是系统平均负载(Load average)

    一.什么是系统平均负载(Load average)? 在Linux系统中,uptime.w.top等命令都会有系统平均负载load average的输出,那么什么是系统平均负载呢? Load Aver ...

  8. Jquery:强大的选择器<二>

    今天跟着资料做了一个示例,为什么我感觉自己做的没书上的好看呢?好吧,我承认自己对css样式只懂一点皮毛,我也不准备深度的去学习它,因为……公司有美工嘛! 这个小示例只是实现了元素的隐藏和显示.元素cl ...

  9. 创建和管理表【weber出品必属精品】

    创建表 必须有 : 1. CREATE TABLE 的权限 SQL> conn /as sysdba 已连接. SQL> create user test default tablespa ...

  10. POJ 1011 - Sticks DFS+剪枝

    POJ 1011 - Sticks 题意:    一把等长的木段被随机砍成 n 条小木条    已知他们各自的长度,问原来这些木段可能的最小长度是多少 分析:    1. 该长度必能被总长整除    ...