代码见:

  • easy: EIM
  • medium-easy: BDFKL
  • medium: ACJ
  • medium-hard: H

A - Algorithm Teaching

题意 给一些集合,现从每个集合中选出一些子集,使得被挑选的集合不是包含关系。

集合之间的包含关系是偏序关系。对 \(n\) 个集合的每个子集建点,根据包含关系连边。根据 Dilworth's Theorem,最小链划分即为答案,求用最少的不交路径覆盖所有点即可。拆点建图,点数 - 二分图最大匹配,即为答案。

B – Build the Perfect House

题意 平面直角坐标系,给 n 个点,画一个面积最大的正方形,不包含任何点。

画一个(1,1),(1,-1)(-1,1),(-1,-1) 的正方形,转点。二分答案,每个点会将旋转角度限制在若干个区间的交内,如果一个位置被 \(n\) 个区间覆盖,就 YES 了,扫描线 check 即可。

C – Cut Inequality Down

题意 第 i 天可以获得 \(a_i\) 的金币,金币数超过 R,回到 R,小于 L 回到 L。多组查询,每组查第 l 天有 x 金币,那在第 r 天有多少金币。

先架好 ST,对于每组查询,二分求出下一次碰壁的时间,再二分求出下一次碰壁的时间,再二分求下一次碰壁的时间 ..... 等等,\(state(pos, 0/1)\) 表示在 \(pos\) 位置的上/下边界这样一个状态,这个状态的后继唯一,那倍增多好啊!排骨龙才一步步跳,\(nex(pos, 0/1, k)\) 表示从状态 \(state(pos, 0/1)\) 转移 \(2^k\) 之后的后继是谁。对于查询,先从 \(B\) 开始二分求出第一次碰壁的状态,再从该状态倍增,求出在到达位置 \(E\) 之前最后一个碰壁的状态是谁,从该状态到 E 的过程,不会碰壁了,前缀和差分计算此段收益即可。

D – Dazzling Stars

题意 平面直角坐标系,有 n 个点,点有点权,需要旋转一个角度,使得按 y 为第一关键字,x 为第二关键字从小到大排序,点权不减。

  • 绕一个点旋转所有点相当于把print的方向旋转
  • 枚举两个点,能将print的角度限制在一个区间,然后求所有的交
  • 复杂度 \(O(n^2logn)\)

\(O(n logn)\) 做法:先考虑所有点亮度不同的情况,根据传递性,只需限制亮度 k 高的点位置高于亮度 k+1 高的点。再考虑有亮度相同的的点,对每种亮度做凸包,亮度值 k 高的点位置的凸包最低点,在,亮度值 k+1 高的点形成凸包最高点上方即可,求凸包切线,即可确定限制条件。

E – Eggfruit Cake

题意 给一个首尾相连的字符串,求有多少区间长度不大于S且至少有一个字符’E‘

  • 尺取一哈

F – Fabricating Sculptures

题意 堆 A 个箱子,第 k 层箱子不能比第 k+1 层箱子多,最下一层有 B 个箱子,求方案数。

按层决策。\(f[i][j]\) 表示放置了 \(i\) 个格子,最上面一层有 \(j\) 个格子的方案数,\(f[i][j]=\sum_{x=j}^{S} f[i-j][x]*(x-j+1)\),预处理 \(f[i-j][

2019-2020 ACM-ICPC Latin American Regional Programming Contest的更多相关文章

  1. 2017-2018 ACM-ICPC Latin American Regional Programming Contest PART (11/13)

    $$2017-2018\ ACM-ICPC\ Latin\ American\ Regional\ Programming\ Contest$$ \(A.Arranging\ tiles\) \(B. ...

  2. 训练20191007 2017-2018 ACM-ICPC Latin American Regional Programming Contest

    2017-2018 ACM-ICPC Latin American Regional Programming Contest 试题地址:http://codeforces.com/gym/101889 ...

  3. 2017-2018 ACM-ICPC Latin American Regional Programming Contest

    题面pdfhttps://codeforc.es/gym/101889/attachments/download/7471/statements-2017-latam-regional.pdf zyn ...

  4. 2017-2018 ACM-ICPC Latin American Regional Programming Contest Solution

    A - Arranging tiles 留坑. B - Buggy ICPC 题意:给出一个字符串,然后有两条规则,如果打出一个辅音字母,直接接在原字符串后面,如果打出一个元音字母,那么接在原来的字符 ...

  5. 2017-2018 ACM-ICPC Latin American Regional Programming Contest GYM101889

    挺有意思的一套题,题也没有啥毒瘤了,本来是队切的结果种种原因大家全挂机了. 只补了百人题,一共7个,其他的暂时先不补了,,也不会嘛qwq H:签到 #include <bits/stdc++.h ...

  6. 2017-2018 ACM-ICPC Latin American Regional Programming Contest D.Daunting device

    题意:一个数组n个操作每次先查询p颜色的数量然后求出区间,区间染色成x,然后求最大染色数 题解:odt裸题,多维护一个color个数数组就好了 //#pragma comment(linker, &q ...

  7. 2017-2018 ACM-ICPC Latin American Regional Programming Contest J - Jumping frog 题解(gcd)

    题目链接 题目大意 一只青蛙在长度为N的字符串上跳跃,"R"可以跳上去,"P"不可以跳上去. 字符串是环形的,N-1和0相连. 青蛙的跳跃距离K的取值范围是[1 ...

  8. Gym 2009-2010 ACM ICPC Southwestern European Regional Programming Contest (SWERC 2009) A. Trick or Treat (三分)

    题意:在二维坐标轴上给你一堆点,在x轴上找一个点,使得该点到其他点的最大距离最小. 题解:随便找几个点画个图,不难发现,答案具有凹凸性,有极小值,所以我们直接三分来找即可. 代码: int n; lo ...

  9. Gym 101889:2017Latin American Regional Programming Contest(寒假自训第14场)

    昨天00.35的CF,4点才上床,今天打的昏沉沉的,WA了无数发. 题目还是满漂亮的. 尚有几题待补. C .Complete Naebbirac's sequence 题意:给定N个数,他们在1到K ...

随机推荐

  1. (转)OpenFire源码学习之四:openfire的启动流程

    转:http://blog.csdn.net/huwenfeng_2011/article/details/43413233 openfire启动 ServerStarter 启动流程图: 启动的总入 ...

  2. psql内部命令及对应sql语句

    \?: 查看所有帮助  \l: 查看所有数据库  SELECT d.datname as "Name",       pg_catalog.pg_get_userbyid(d.da ...

  3. ASP.NET Core学习——前言

    跌跌撞撞,公司的新项目终于要在这个月月底上线. 新项目使用ASP.NET Core来做,以前没接触过这方面的内容,只能一边学习,一边搞开发. 眼看项目上线在即,工作没那么忙,也不需要天天加班. 回想了 ...

  4. java xmltojson jsontoxml

    JSONObject.fromObject需要的有额外的6个包,必不可少,一定要注意: commons-beanutils-1.9.2.jar      commons-collections-3.2 ...

  5. CPUID读取有关Cache的信息

    1: void cpuidTest() 2: { 3: u32 val_eax, val_ebx, val_ecx, val_edx; 4: asm("cpuid" 5: : &q ...

  6. 剑指offer——67左旋转字符串

    题目描述 汇编语言中有一种移位指令叫做循环左移(ROL),现在有个简单的任务,就是用字符串模拟这个指令的运算结果.对于一个给定的字符序列S,请你把其循环左移K位后的序列输出.例如,字符序列S=”abc ...

  7. Tomcat集群session复制与Oracle的坑。。

    问题描述 公司某个系统使用了tomcat自带的集群session复制功能,然后后报了一个oracle驱动包里面的连接不能被序列化的异常. 01-Nov-2017 16:45:26.653 SEVERE ...

  8. JDK在Win10与Ubuntu下的安装与配置

        本文首发于cartoon的博客     转载请注明出处:https://cartoonyu.github.io/cartoon-blog     近段时间把自己电脑(win).虚拟机(Ubun ...

  9. win7+ubuntu双系统安装

    XP+ubuntu双系统可參考 xp硬盘上安装ubuntu12.04双系统 1.XP安全不再,最终将吾等磨机的人逼上梁山,是时候做一个win7+ubuntu的双系统了. 废话少说,直接进入主题,先腾出 ...

  10. 【转】elasticsearch中字段类型默认显示{ "foo": { "type": "text", "fields": { "keyword": {"type": "keyword", "ignore_above": 256} }

    官方原文链接:https://www.elastic.co/cn/blog/strings-are-dead-long-live-strings 转载原文连接:https://segmentfault ...