ICPC 2018 Asia Hanoi Regional Contest
A. Amazing Adventures
B. Bipartite Battle
solved by rdc 135min
- sdcgvhgj 打表找出了规律,发现 sg 值只和点数和边数的奇偶性有关。
- 数学归纳之。
C. Conquest Campaign
solved by rdc 16min
- 超级源点,BFS。
D. Divide Doughnut
solved by rdc 199min -3
- 注意到长度为 5e8 的窗口,滑动一步,1 的个数变化的绝对值,不超过 1。
- 介值定理。
心路历程
- 这个次数限制是什么东西?它为什么是 log 根号啊。
- 这个每一部分都不超过 1 有什么用啊?想不通啊。
- 窗口一滑。窗口内 1 的个数变化不超过 1.
- 定义 \(f(x)\) 表示从 \(x\) 开始长度为 5e8 的区间内 1 的个数,问题等价于找零点。
F. Fun with Fibonacci
upsolved by sdcgvhgj
题意
- 定义\(G(i,n)=F(G(i-1,n)),G(1,n)=F(n)\),\(F\)为斐波那契数列,求\(G(k,n)\%p\)
- \(10^5\)组数据,\(1≤n,k≤10^{18},1≤p≤10^6,p\)为任意正整数
做法
- 斐波那契数列循环节是经典问题,可以\(O(log^2n)\)求得,设斐波那契数列模\(p\)的循环节为\(f(p)\)
- 设\(G(k,n,p)=G(k,n)\%p\),于是有:\(G(k,n,p)=F(G(k-1,n,f(p))\%p\),于是有了\(O(k*log^2n)\)的做法
- 发现有这样一个性质,不管初始\(p\)为何值,在递归不超过20层之后一定会达到一个不动点,即\(f(x)=x\)的点,于是之后的递归\(p\)是不变的
- 于是问题就变成了每次把\(n\)变为\(F(n)\%p\),求\(k\)次之后的值。考虑从\(i\)向\(F(i)\)连边,于是就变成在\(p\)个点的基环森林(水母森林)上找环的问题,复杂度\(O(p)\)
- 打表发现不动点一共有9个,且最大为\(9375000\),并且每个点最多跳4次就会进基环里,于是我们只需要线性预处理每个基环森林的每个点会进到哪个环的哪个点就好了
- 设\(N=9375000\),求所有\(f(p)\)的复杂度可以通过记忆化达到\(O(NlogN)\)(\(O(log^2N)\)的复杂度求\(O(N/logN)\)个素数的值加\(O(logN)\)的复杂度求其他数的值)
- 这样每次查询的复杂度就是\(O(20logN)\)了
- code
H. Hydra's Heads
solved by sdcgvhgj 17min start 22min AC
签到
I. Insider's Identity
solved by sdcgvhg 99min
AC自动机经典问题
J. Jurassic Jungle
solved by rdc 185min -1
做法
- 完全不会证。先注意到环合法,再注意到团合法,再注意到左右集点数等的完全二分图合法。
- 接下来,想破脑袋也想不出其它合法的图了,烦死咯。
- 不如 try a try!
K. Kingdom of Kittens
23min start, 1737min upsolved by sdcgvhgj -17
题意 给平面n个点,问是否存在一个三角形使所有点都在其边界上
做法
- 所有点都在凸包上,且严格凸包点数小于等于6,WA
- 发现这样很多情况都不对,严格凸包的所有有点的边都需要被三角形包含
- 考虑枚举严格凸包的三条边然后check?被正方形hack
- 显然(大概)枚举两条边一定是对的,那另一条边怎么找?以及怎么check?
- 法一:枚举一个点,过这个点做已确定两边的角平分线的垂线做第三条边,然后check,TLE,而且涉及浮点运算
- 法二:在两侧分别分类讨论。看似很难讨论,但冷静分析一下发现还算简单,AC
L. Lazy Learner
ICPC 2018 Asia Hanoi Regional Contest的更多相关文章
- 2018 ACM-ICPC Asia Beijing Regional Contest (部分题解)
摘要 本文主要给出了2018 ACM-ICPC Asia Beijing Regional Contest的部分题解,意即熟悉区域赛题型,保持比赛感觉. Jin Yong’s Wukong Ranki ...
- The 2018 ACM-ICPC Asia Qingdao Regional Contest(部分题解)
摘要: 本文是The 2018 ACM-ICPC Asia Qingdao Regional Contest(青岛现场赛)的部分解题报告,给出了出题率较高的几道题的题解,希望熟悉区域赛的题型,进而对其 ...
- The 2018 ACM-ICPC Asia Qingdao Regional Contest
The 2018 ACM-ICPC Asia Qingdao Regional Contest 青岛总体来说只会3题 C #include<bits/stdc++.h> using nam ...
- 2019-2020 ICPC, Asia Jakarta Regional Contest (Online Mirror, ICPC Rules, Teams Preferred)
2019-2020 ICPC, Asia Jakarta Regional Contest (Online Mirror, ICPC Rules, Teams Preferred) easy: ACE ...
- ACM-ICPC Asia Beijing Regional Contest 2018 Reproduction hihocoder1870~1879
ACM-ICPC Asia Beijing Regional Contest 2018 Reproduction hihocoder1870~1879 A 签到,dfs 或者 floyd 都行. #i ...
- zoj 3659 Conquer a New Region The 2012 ACM-ICPC Asia Changchun Regional Contest
Conquer a New Region Time Limit: 5 Seconds Memory Limit: 32768 KB The wheel of the history roll ...
- 2014-2015 ACM-ICPC, Asia Xian Regional Contest(部分题解)
摘要 本文主要给出了2014-2015 ACM-ICPC, Asia Xian Regional Contest的部分题解,说明了每题的题意.解题思路和代码实现,意即熟悉区域赛比赛题型. Built ...
- 2017-2018 ACM-ICPC, Asia Tsukuba Regional Contest
2017-2018 ACM-ICPC, Asia Tsukuba Regional Contest A Secret of Chocolate Poles 思路:暴力枚举黑巧克力的个数和厚黑巧克力的个 ...
- hdu 3123 GCC (2009 Asia Wuhan Regional Contest Online)
GCC Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 131072/131072 K (Java/Others) Total Subm ...
随机推荐
- 【Android】Theme.AppCompat.Light 问题
Android 开发的 styles.xml 文件中遇到了这个问题: <style name="AppBaseTheme" parent="Theme.AppCom ...
- 插入Oracle数据库后返回当前主键id
最近做一个spring版本3.0.4的老项目功能,应用场景要用到插入oracle表后返回主键ID拿来和其他表关联. 用oralce的可以一直用这种处理方式,高兼容低,搜索网上的资料都不能和这个Spri ...
- 浅谈Ceph纠删码
目 录第1章 引言 1.1 文档说明 1.2 参考文档 第2章 纠删码概念和原理 2.1 概念 2.2 原理 第3章 CEPH纠删码介绍 3.1 CEPH纠删码用途 3.2 CEPH纠删码库 3.3 ...
- 解决报错:类型“System.Object”在未被引用的程序集中定义。必须添加对程序集“System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”的引用
Razor视图引擎中,使用部分视图编译报错 类型“System.Object”在未被引用的程序集中定义.必须添加对程序集“System.Runtime, Version=4.0.0.0, Cultur ...
- 【Java例题】5.5 映射类的使用
5.映射类的使用.使用HashMap保存英文-中文对照单词词典.单词词典可以增加和删除词汇.输入一个英文单词,翻译成中文并显示.输入一个中文单词,翻译成英文并显示. package chapter6; ...
- react学习(二)--元素渲染
元素用来描述你在屏幕上看到的内容: const element = <h1>Hello, world</h1>; 与浏览器的 DOM 元素不同,React 当中的元素事实上是普 ...
- JAVA基础知识(六)Java 静态多分派&动态单分派
1.分派发生在编译期和运行期,编译期的分派为静态分派,运行期的为动态分派. 2.编译期是根据对象声明的类型来选择方法,运行期是根据对象实际类型来选择方法. 3.单分派和多分派取决于宗量, 方法调用者和 ...
- rtags——node.js+redis实现的标签管理模块
引言在我们游览网页时,随处可见标签的身影: 进入个人微博主页,可以看到自己/他人的标签,微博系统会推送与你有相同标签的人 游览博文,大多数博文有标签标记,以说明文章主旨,方便搜索和查阅 网上购物,我们 ...
- DT-06 For Homekit
一. 配置DT-06上网 连接此热点,会自动弹出wifi配置页面. 输入选中的路由密码,点 Join加入,如果路由没有出现在列表中,点 Other手工输入(仅支持2.4g路由配置) 二.配置dt-06 ...
- Spark安装与部署
1.首先安装scala(找到合适版本的具体地址下载) 在/usr/local/目录下 wget https://www.scala-lang.org/download/**** 2.安装spark ( ...