SDU暑期集训排位(5)

A. You’re in the Army Now

题意

  • 类似选志愿。每个人有 mark,有优先级从高到低的志愿。

做法

  • 定睛一看,鲨鼻题。然后 WA。
  • 为什么会 WA 呢?名字排序。
    • 前缀后缀空格的去除。
    • 题面中讲:人的名字由小写大写字母与空格组成,那么有可能名字里有连续多个空格。
    • a 和 B 优先级谁小呢?

When letters are equal consider capital letters less, in other case
don’t consider their case

Orc name can consist only from lowercase and uppercase Latin letters and
spaces, but does not have leading and trailing spaces (you should omit them if they’re in the input).

  • 题面中该表达的信息表达得很清楚,如果读题读成憨憨了,没什么好抱怨的。

D. Castle

upsolved

题意 给 \(n\) 个凸多边形,形成一个闭集套,给 \(m\) 个点,每个点被选择后,这个点所在的平面区域涂成黑色,求黑色面积。

做法 对凸多边形按照面积从小到大排序,对于一个点,二分最内层的包含这个点的多边形。判断点是否在凸包内可以 \(O(log n)\) 时间实现。

unlimited Wrong Answer on Test 5 Work

  • PS 小心凸包会不会三点共线。

upd: sdcgvhgj使用了憨憨排序,红书的板子需要传入严格凸包


G. Princess

题意 当头发长度为 \(k\) 时剪成光头,头发增长速度会变成 \(k\) m/每周,一个光头初始增长速度为 \(1\) m/每周。以最快的速度头发长度增长到 \(L\)。

做法 剪头发的决策是个泛函,具体证明得请教《泛函分析》

  • 口胡结论,我们每 \(x\) 周减一次头发。
  • 那么第 \(k\) 次剪头发时,即第 \(kx\) 周头发长度为 \(x^k\) (\(k\)为整数)
  • 从小到大枚举一下 \(k\)。对答案取极小。
  • 神妙的事情:这个问题,可以成为自然对数的背景之一。

I. Spell

题意 给n个字符串,输出字典序第k大的,同时是n个字符串的子串的字符串
做法

  • 求一个字符串的第k大子串是SAM的经典问题,只需要dp出从每个点开始的路径数,然后边在SAM上跑边输出答案就好
  • 求同时是n个字符串的子串的串也是SAM的经典问题,只需要对n个串建广义SAM然后统计每个点的子树中是否包含所有n个串中的位置
  • 所以这题是个不算麻烦的题,只需要把第二个问题中合法的点拿出来给第一个问题
  • WA->重读题->没毛病->对拍->拍不出错->乱改->xjb交->WA->..(2h)..->发现读错题。。。我是憨憨

J. Orcish Transportation

题意

  • 定义 \(f(i)=[i \geq n]?i-n:i+n\)。
  • 输入边 \(u,v,w\)。\(u\) 向 \(v\) 连容量为 \(w\) 的边,\(f(v)\) 向 \(f(u)\) 连容量为 \(w\) 的边。
  • 求 \(1\) 到 \(n+1\) 最大流。

做法

  • 直接建图求最大流,边 \(u,v\) 的流为 \(flow(u,v)\),\(flow_{ans}(u,v) = \frac{flow(u,v)+flow(f(u),f(v))}{2}\)

证明

  • 考虑流可行的充要条件。

    1. 对边:流量小于容量上限。
    2. 对非源、汇的点:流量守恒。
    3. 从源点流出的流量,等于流入汇点的流量。
  • 对 1 的证明:\(flow(u,v) \leq lim(u,v), flow(f(u),f(v)) \leq lim(u,v)\),因此 \(flow_{ans}(u,v) = \frac{flow(u,v)+flow(f(u),f(v))}{2} < lim(u,v)\)
  • 对 2 的证明:
    • 考虑 \(u\) 点建立的流量守恒等式,称为

      SDU暑期集训排位(5)的更多相关文章

      1. SDU暑期集训排位(9)

        SDU暑期集训排位(9) G. Just Some Permutations 基础 DP 练习部分 定义 \(f(S)\),表示让 S 中的人全 happy 的方案数. \(dp[i][j]\) 表示 ...

      2. SDU暑期集训排位(4)

        SDU暑期集训排位(4) C. Pick Your Team 题意 有 \(n\) 个人,每个人有能力值,A 和 B 轮流选人,A 先选,B 选人按照一种给出的优先级, A 可以随便选.A 想最大化己 ...

      3. SDU暑期集训排位(8)

        A. A Giveaway 签到 B. Game of XOR 做法 dp[G][L][R]表示在倒数第G代,左边的数是L,右边的数是R,下面共有多少个0和1 区间和转换成两次前缀和和一次单点查询 利 ...

      4. SDU暑期集训排位(3)

        B. Mysterious LCM 做法 保留 \(a_i|x\) 的元素,其它元素解体. \(a_i\) 的某个质因子的指数,要和 \(x\) 的这个质因子一样多,才有贡献,否则这个质因子它在划水啊 ...

      5. SDU暑期集训排位(2)

        A. Art solved by sdcgvhgj 3min 签到 B. Biology solved by sdcgvhgj 85min 暴力 C - Computer Science solved ...

      6. 2014年CCNU-ACM暑期集训总结

        2014年CCNU-ACM暑期集训总结 那个本期待已久的暑期集训居然就这种.溜走了.让自己有点措手不及.很多其它的是对自己的疑问.自己是否能在ACM这个领域有所成就.带着这个疑问,先对这个暑假做个总结 ...

      7. 8.10 正睿暑期集训营 Day7

        目录 2018.8.10 正睿暑期集训营 Day7 总结 A 花园(思路) B 归来(Tarjan 拓扑) C 机场(凸函数 点分治) 考试代码 A B C 2018.8.10 正睿暑期集训营 Day ...

      8. 8.6 正睿暑期集训营 Day3

        目录 2018.8.6 正睿暑期集训营 Day3 A 亵渎(DP) B 绕口令(KMP) C 最远点(LCT) 考试代码 A B C 2018.8.6 正睿暑期集训营 Day3 时间:5h(实际) 期 ...

      9. 8.9 正睿暑期集训营 Day6

        目录 2018.8.9 正睿暑期集训营 Day6 A 萌新拆塔(状压DP) B 奇迹暖暖 C 风花雪月(DP) 考试代码 A B C 2018.8.9 正睿暑期集训营 Day6 时间:2.5h(实际) ...

      随机推荐

      1. Promise异步编程解决方案

        Promise是ES6中新增的异步编程解决方案,体现在代码中它是一个对象,可以通过 Promise 构造函数来实例化. 其最基本的使用 new Promise(function(resolve,rej ...

      2. bit、byte、kb、mb、g的区别

        1Byte=8bit1KB=1024Byte(字节)=8*1024bit1MB=1024KB1GB=1024MB1TB=1024GB bit是计算机数据的最小单元.要么是0,要么是1. byte 关键 ...

      3. CEPH 对象存储的系统池介绍

        RGW抽象来看就是基于rados集群之上的一个rados-client实例. Object和pool简述 Rados集群网上介绍的文章很多,这里就不一一叙述,主要要说明的是object和pool.在r ...

      4. 夯实Java基础(十二)——异常处理

        1.异常处理概述 在Java程序执行过程中, 总是会发生不被期望的事件, 阻止程序按照程序员预期正常运行, 这就是Java程序出现的异常. 异常处理是基于面向对象的一种运行错误处理机制,通过对异常问题 ...

      5. Eclipse中代码自动添加注释及代码注释模板

        介绍 为了提高代码的可读性以及为了有些代码有洁癖的人的需求,我们要从学生到职业进行迈进的过程中,必须把以前的那种代码可读性不高的习惯改掉,因为我们必须要与企业接轨.. 好了,废话不多说,反正就是提升自 ...

      6. Linux部署项目遇到问题解决

        使用Linux部署web项目,可能会遇到各种各样问题导致服务启动失败,以下是我近期部署项目遇到的问题以及解决方案 一.场景:把war包放入tomcat的webapps文件夹下,然后启动tomcat服务 ...

      7. 【Java例题】7.4 文件题1-学生成绩排序

        4.学生成绩排序.已有一个学生成绩文件,含有多位学生的成绩:读取这个文件中的每位学生的成绩,然后排序:最后将这些排好序的成绩写到另一个文件中. package chapter7; import jav ...

      8. 【POJ - 2236】Wireless Network (并查集)

        Wireless Network 这接翻译了 Descriptions 地震发生在东南亚.ACM(亚洲合作医疗团队)已经与膝上电脑建立了无线网络,但是一次意外的余震袭击,网络中的所有计算机都被打破了. ...

      9. dubbokeeper-moniter部署指南

        moniter在整个dubbo架构中的角色: 使用的1.0.1版本: ## 1.0.1版本变动内容 dubbokeeper在1.0.1版本对监控数据存储模块抽离出来,做为单独的应用部署,而不是和1.0 ...

      10. pythonday03数据类型(一)

        今日内容 1.整型 2.布尔型 3.字符串 4.补充 5.作业讲解 6,pycharm自动生成头文件 1.整型(int) py2 int/long 32位电脑:-2147483648-21474836 ...