A. Streets of Working Lanterns - 2

  • 对于每个括号序列,存在一个\(mv\),表示要接上这个序列至少需要\(-mv\)个左括号,同时处理出接上这个序列后,左括号数量的增量\(add\)。
  • 假设当前左括号数量为\(sum\),对于\(sum+mv_i>=0\)的片段都是可添加的,一个比较容易想到的贪心,取\(add_i\)最大的那个序列,使得左括号数量尽可能多。这个贪心的正确性是建立在\(add_i>=0\)的情况,否则是错误。
  • 考虑\(sum = 7, (mv_1,add_1)=(-4, -1), (mv_2, add_2)=(-7, -2)\)。
  • 只考虑两个序列时,应该取\(sum+add_i+mv_j\)大的那个,就转换成经典的贪心排序问题。

B. Pursuing the Happiness

  • happiness在原串上不会重叠,所以只需要考虑原串包含happiness的个数。
  • 如果要求的串\(t\)会出现重叠,上述做法不完善。
  • 若原串包含串\(t\),则对应的串\(t\)上至少有一个位置要交换出去,那么可以枚举串\(t\)的交换位置,同时\(O(n)\)枚举另一个交换位置。交换完,两个位置涉及长度\(|t|\)的子串都要更新,这一步可以用哈希解决。

F. Circuits

  • 好的元件不会把坏的测成好的,而坏的会把好的测成坏的。
  • 一旦测出坏元件,则我们把这两个都当成坏的,由于题目保证少于一半的是坏的,所以最后必然会剩下一个好的。

I. Matrix God

  • 两个矩阵都左乘一个\(1 * n\)的随机向量,判断结果是否一致。

J. Catch the Monster

  • 注意怪兽可以躲在时间隧道内。
  • 若把一个点去掉后,形成的子树中存在超过两个非链的子树,则无法抓住怪兽,否则总是有办法遍历整棵树。

L. High Probability Cast

  • 李超线段树。

M. Last Man Standing

  • 倒着做。

X Samara Regional Intercollegiate Programming Contest的更多相关文章

  1. Gym100971B Gym100971C Gym100971F Gym100971G Gym100971K Gym100971L(都是好写的题。。。) IX Samara Regional Intercollegiate Programming Contest Russia, Samara, March 13, 2016

    昨天训练打的Gym,今天写题解. Gym100971B 这个题就是输出的时候有点小问题,其他的都很简单. 总之,emnnn,简单题. 代码: #include<iostream> #inc ...

  2. 2017, X Samara Regional Intercollegiate Programming Contest 题解

    [题目链接] A - Streets of Working Lanterns - 2 首先将每一个括号匹配串进行一次缩减,即串内能匹配掉的就匹配掉,每个串会变成连续的$y$个右括号+连续$z$个左括号 ...

  3. IX Samara Regional Intercollegiate Programming Contest F 三分

    F. Two Points time limit per test 2 seconds memory limit per test 256 megabytes input standard input ...

  4. Codeforces Gym100971 L.Chess Match (IX Samara Regional Intercollegiate Programming Contest Russia, Samara, March 13)

    这个题就是两个队,看最多能赢的个数,然后比较一下,看两个队是都能赢彼此,还是只有一个队赢的可能性最大.表达能力不好,意思差不多... 和田忌赛马有点像,emnnn,嗯. 代码: 1 #include& ...

  5. Codeforces Gym100971 K.Palindromization-回文串 (IX Samara Regional Intercollegiate Programming Contest Russia, Samara, March 13)

    这个题就是从字符串中删除一个字符,然后剩下的是回文串. 我写的代码虽然长得好看,但是循环里面的比较条件容易想错,太智障了... 一开始写的是计数比较,但是有的时候下标相同的也比较了,为了简单一些,直接 ...

  6. Codeforces Gym100971 G.Repair-思维题(切矩形板子) (IX Samara Regional Intercollegiate Programming Contest Russia, Samara, March 13)

    这个题就是一块大板子,问你能不能切成两块要求的长宽的两块板子,一开始是按切板子想的,感觉有点麻烦. 直接反过来想,把两块要求的板子拼起来,填成一个大板子,看填出来的这个板子和题目给的板子比较,小于等于 ...

  7. Codeforces Gym100971 F.Two Points (IX Samara Regional Intercollegiate Programming Contest Russia, Samara, March 13)

    这个题直接推公式就可以. 就是解一元二次方程,用高中学的公式,函数开口向上,求最大值为(4ac-b*b)/4a. 这个题推出来一元二次方程,然后将最大值的公式化简一下.公式很好推. 这个题有疑问,in ...

  8. Codeforces Gym100971 C.Triangles-组三角形 (IX Samara Regional Intercollegiate Programming Contest Russia, Samara, March 13)

    这个题就是组三角形,从给出的数组里任选两个和未知的边组三角形. 任意两边之和大于第三边,记住这个就可以了. 代码: 1 #include<cstdio> 2 #include<cst ...

  9. Codeforces Gym100971 B.Derangement (IX Samara Regional Intercollegiate Programming Contest Russia, Samara, March 13)

    昨天训练打的Gym,今天写题解. 这个题就是输出的时候有点小问题,其他的都很简单. 代码: #include<iostream> #include<cstring> #incl ...

  10. X Samara Regional Intercollegiate Programming Contest DIV2

    http://codeforces.com/gym/101341 其实我觉得这份题很不错的,虽然是div2,但是感觉对我挺有帮助(我比较垃圾0.0),还没补完(做的时候一直蒙逼,要补很多题)先写一点点 ...

随机推荐

  1. java中的线程(2):如何正确停止线程之2种常见停止方式

    1.常见停止方式 结束run函数,run中含退出标志位. 使用interrupt()方法中断线程 使用stop方法暴力终止(已经弃用) 2.结束run class TestThread extends ...

  2. 构建PaaS的开源平台:CloudFoundry

    CloudFoundry的架构: 点评:这是vmware用ruby开发的一个paas,由于对ruby不太熟悉,还是比较难理解. refer to :http://www.oschina.net/que ...

  3. 常用命令4-文件搜索命令 2- whereis

    whereis比较局限,只能查看系统命令.

  4. 苹果审核不通过,程序/游戏不兼容IPV6网络

    最近苹果升级的IOS10,所以那边网络环境变成IPV6,如果你的程序不兼容IPV6,苹果的程序会以这个不兼容的原因驳回审核. 那么如何让自己的程序兼容这个?方法其实C#本来已经提供给你的,而且很简单, ...

  5. 第一周<单元一聚类>

    K-means 聚类算法 初始随机选择 而后不断更新 kmeans 应用 省份归类 调用kmeans方法所需要的参数 n_clusters 指定的聚类中心 init 初始聚类中心的初始化方法 默认k- ...

  6. 会话技术之cookie(记录当前时间、浏览记录的记录和清除)

    cookie 会话技术: 当用户打开浏览器的时候,访问不同的资源,直到用户将浏览器关闭,可以认为这是一次会话. 作用: 因为http协议是一个无状态的协议,它不会记录上一次访问的内容.用户在访问过程中 ...

  7. VS2013下设置git同步,“出现了错误。详细消息: An error was raised by libgit2. Category = Net (Error).”。

    前言: 这个错误耽误了我数个小时,终于解决,不知道为何VS官方在与github同步上面做得如此麻烦.希望能帮到大家. 出现了错误.详细消息: An error was raised by libgit ...

  8. 阿里云 EMAS HTTPDNS 联合函数计算重磅推出 SDNS 服务,三大能力获得突破

    1. 什么是 HTTPDNS ? 传统的 DNS(Domain Name System)使开发者常面临着域名劫持.调度不精准的问题. HTTPDNS 使用 HTTP 协议替换常用的 UDP 协议,完成 ...

  9. iOS 获取 APP 的 Launch Image

    http://www.cocoachina.com/ios/20151027/13780.html 作者:里脊串 授权本站转载. 启动图(LaunchImage)的管理其实在iOS开始中算比较简单的了 ...

  10. 外贸电子商务网站之Prestashop paypal支付添加

    1.在https://addons.prestashop.com/en/payment-card-wallet/1748-paypal.html 下载paypal支付模块 2.解压,复制到网站根目录- ...