代码见:戳

  • 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. 2019 wannafly winter camp day5-8代码库

    目录 day5 5H div2 Nested Tree (树形dp) 5F div2 Kropki (状压dp) 5J div1 Special Judge (计算几何) 5I div1 Sortin ...

  2. js滚动页面到固定位置进行操作

    $(window).scroll(function () { var scrollTop = $(this).scrollTop(); var scrollHeight = $("#div& ...

  3. tornado的安装

      centos6.4 安装tornado框架连接工具  xshell 工具 1.如果在windows下有tornado的安装包首先现在上装到linux下的上传工具:yum install lrzsz ...

  4. tomcat 相关异常

    端口没有被占用却提示Several ports (8005, 8080, 8009) required by Tomcat??? 解决办法:1.运行cmd进入命令行界面:2.运行命令: netsh w ...

  5. CodeForces-1249D2-Too Many Segments (hard version) -STL+贪心

    The only difference between easy and hard versions is constraints. You are given nn segments on the ...

  6. MySQL将查询结果写入到文件的2种方法

    1.SELECT INTO OUTFIL: 这种方法不能覆盖或者追加到已经存在的文件,只能写入到新文件,并且建立文件的路径需要mysql进程用户有权限建立新文件. mysql 61571 60876 ...

  7. 一份完整的 Java 成神路线图,值得收藏!

    Java,是现阶段中国互联网公司中,覆盖度最广的研发语言. 有不少朋友问,如何深入学习Java后端技术栈,今天分享一个,互联网牛人整理出来的完整的Java成神路线图. 一:常见模式与工具 学习Java ...

  8. html5本地存储(三)--- 本地数据库 indexedDB

    html5内置了2种本地数据库,一是被称为“SQLLite”,可以通过SQL语言来访问文件型SQL数据库.二是被称为“indexedDB” 的NoSQL类型的数据库,本篇主要讲indexedDB数据库 ...

  9. 从零开始搭建系统2.2——ELK安装及配置

    ELK 最新版本对JDK的最低要求是1.8,安装java_1.8版本 一.Elasticsearch 1.创建目录 2.下载安装包 wget https://artifacts.elastic.co/ ...

  10. windows 修改远程登录端口号

    运行regedit.exe打开注册表编辑器,即在cmd的dos窗口输入regedit命令 找到如下注册表子项: HKEY_LOCAL_MACHINE\System\CurrentControlSet\ ...