ACM-ICPC 2018 南京网络赛
题目顺序:A C E G I J L
A. An Olympian Math Problem
打表,找规律,发现答案为n-1
C. GDY
题意:
m张卡片,标号1-13;
n个玩家,标号1-n;每个人拿前5个卡片
玩家1先出牌(最小),其他玩家2-n顺时针标号从1-n-1出牌
轮到当前玩家出牌,如果有比上一次的出牌大1,可以直接出;没有大1的牌,若有2出2;若都没有,这一轮跳过他
如果一轮中,玩家x出了一张最大的牌,玩家x~n,1~x中所有玩家都没有出牌,从玩家x开始所有玩家都拿一张牌(如
果没有牌了就不拿了),然后玩家x打出最小牌。
1个人最先没牌了,他就win了;
其他人计算惩罚 = sum(手中牌的数字标号)
题解:180行大模拟。。改了一个多小时的bug,然后AC了23333
E. AC Challenge
题意:共n个problem,要去选择1~n中的几个problem,其中每个方案有si个前提问题必选,分别是p1,p2...pn;
回答一个问题会得到 t×ai+bi 分数,其中t表示回答的第t个问题。
题解:状压dp;先看数据量,n<20,即可想到用状压,枚举选定方案状态 共0~1<<n个,对于每个状态,判断是否满足每一个问题的前提条件。若满足,就更新dp数组
G. Lpl and Energy-saving Lamps
比较简单的数据结构题
题意:每个月买m盏新的灯,共n个房间。每个月按照房间号从小到大的顺序(1~n),找到手中的灯数量 >= 房间所需灯的数量,循环至手中灯的数量不足(<所有房间所需的灯) ;
题解:线段树区间查询 + 单点更新,维护区间最小值;
因为每个月只需要按照房间号从小到到,找到 比 手中的灯数k小的房间,而线段树维护的区间最小值可以 以O(logn)的时间找到该房间;
找到该房间后需要将房间所需灯数设置为inf,代表该房间已经装好了,以便后面查找,即线段树单点更新。
I. Skr
题意:给定一个字符串(仅含有数字字符),计算所有回文子串的和。
题解:马拉车manacher + 字符串hash
首先马拉车算法过程中已经找到了 所有回文子串,但是会有重复
所有我们就要用字符串hash来存储已经找到的回文子串,在下次马拉车过程中出现相同的回文串时,判重。
*J. Sum
题意:拆分整数成因数的乘积,若这个整数的因数 含有 平方数(或者幂>=2),就不合法;每个数有确定的拆分方案个数,f(i)表示整数i的拆分方案个数,让我计算前n项f(i)的和
题解:题目数据 n <= 2*10^7,所以不能用O(nlogn)的筛,只能用O(n)的筛,这里用欧拉筛,
L. Magical Girl Haze
题意:n个城市,m条路,每条路距离ci,一个人住在城市1,要去城市n,他可以使k条路的边权距离为0,问最短路
题解:分层图模板题,拆点后,跑最短路。
如何拆点:依照题意,可以让k条路边权为0,那么我们就建立K层图,把每个边对应的两个城市点u和v+n,u+n 和 v+2n ,u+2n和v+3n......连一条权值为0的边。并且相同层u+kn和v+kn连上权值为原ci的边
即:若原图中i~j有一条权值为x的边,则
add_edge(i,j,x),add_edge(i+n,j+n,x).....add_edge(i+kn,j+kn,x)
add_edge(i,j+n,0),add_edge(i+n,j+2n,0)....add_edge(i+(k-1)n,j+k*n,0)
这样拆点后,使一条边为0,就变成了向上走了一层,走了一条权值为0的边。
建完图后跑dijkstra。
ACM-ICPC 2018 南京网络赛的更多相关文章
- ICPC 2018 南京网络赛 J Magical Girl Haze(多层图最短路)
传送门:https://nanti.jisuanke.com/t/A1958 题意:n个点m条边的路,你有k次机会将某条路上的边权变为0,问你最短路径长度 题解:最短路变形,我们需要在常规的最短路上多 ...
- 计蒜客 2018南京网络赛 I Skr ( 回文树 )
题目链接 题意 : 给出一个由数字组成的字符串.然后要你找出其所有本质不同的回文子串.然后将这些回文子串转化为整数后相加.问你最后的结果是多少.答案模 1e9+7 分析 : 应该可以算是回文树挺裸的题 ...
- 2014 ACM/ICPC 鞍山赛区网络赛(清华命题)
为迎接10月17号清华命题的鞍山现场赛 杭电上的题目 Biconnected(hdu4997) 状态压缩DP Rotate(hdu4998) 相对任一点的旋转 Overt(hdu4999 ...
- 2018南京网络赛 - Skr 回文树
题意:求本质不同的回文串(大整数)的数字和 由回文树的性质可知贡献只在首次进入某个新节点时产生 那么只需由pos和len算出距离把左边右边删掉再算好base重复\(O(n)\)次即可 位移那段写的略微 ...
- 2017 ACM/ICPC 南宁区 网络赛 Overlapping Rectangles
2017-09-24 20:11:21 writer:pprp 找到的大神的代码,直接过了 采用了扫描线+线段树的算法,先码了,作为模板也不错啊 题目链接:https://nanti.jisuanke ...
- 2018南京网络赛L题:Magical Girl Haze(最短路分层图)
题目链接:https://nanti.jisuanke.com/t/31001 解题心得: 一个BZOJ的原题,之前就写过博客了. 原题地址:https://www.lydsy.com/JudgeOn ...
- 【2017 ACM/ICPC 乌鲁木齐赛区网络赛环境测试赛 E】蒜头君的排序
[链接]h在这里写链接 [题意] 在这里写题意 [题解] 莫队算法+树状数组. 区间增加1或减少1. 对逆序对的影响是固定的. (用冒泡排序变成升序的交换次数,就是逆序对的个数) [错的次数] 0 [ ...
- HDU 4751 Divide Groups (2013南京网络赛1004题,判断二分图)
Divide Groups Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Tot ...
- HDU 4750 Count The Pairs (2013南京网络赛1003题,并查集)
Count The Pairs Time Limit: 20000/10000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others ...
随机推荐
- Linux—挂载磁盘(云盘)
创建挂载目录 [root@localhost ~]# mkdir -p /www 可以看到/dev/vda1盘挂载/ /dev都是位于根路径下,都属于系统盘.根路径 / 都是位于系统盘.而/root, ...
- nginx常见问题总结
1.当有多个server{}时先匹配哪个?如果请求同时命中多个server,则先从上到下(如果是分布在多个配置文件中,则在文件夹中摆放在前面的文件优先被读取)先匹配到哪个算哪个. 2.location ...
- windows搭建成代理服务器 CCProxy
1.软件下载地址 http://www.ccproxy.com/ 2.账号激活 CCProxy无限用户版序列号:JHEHIHCDDAHC注册码:15f7f78febfaee55afeafefff7cb ...
- 【2019.8.15 慈溪模拟赛 T2】组合数(binom)(卢卡斯定理+高维前缀和)
卢卡斯定理 题目中说到\(p\)是质数. 而此时要求组合数向质数取模的结果,就可以用卢卡斯定理: \[C_x^y=C_{x\ div\ p}^{y\ div\ p}\cdot C_{x\ mod\ p ...
- django--调用百度AI接口实现人脸注册登录
面部识别----考勤打卡.注册登录.面部支付等等...感觉很高大上,又很方便,下面用python中的框架--django完成一个注册登录的功能,调用百度AI的接口,面部识别在网上也有好多教程,可以自己 ...
- Mybatis相关试题
1.MyBatis有两种事务管理器类型,分别是() A:JDBC B:MANAGED C:POOLED D:JBDI 正确答案:AB 试题分析: 在 MyBatis 中有两种事务管理器类型(也就是 t ...
- 扎心一问!你凭什么成为top1%的Java工程师?
目录 1.解决生产环境里的突发故障 2.对棘手的线上性能问题进行优化 3.锻造区别于普通码农的核心竞争力 4.打磨架构设计能力 5.你凭什么成为 top1%? 你工作几年了? 是否天天CRUD到吐 ...
- 01-Git单人本地仓库操作
Git源代码管理 Git(多人协同开发同一个项目),作用就是源代码管理,为什么需要源代码管理呢,方便多人协同开发,并且方便版本控制. Git管理源代码特点: 1.Git是分布式管理.服务器和客户端都有 ...
- 持续集成(CI):WEB自动化+Allure+Jenkins定时构建
一.allure插件安装 pytest可以通过allure集成展示优美的测试报告,同样allure也可以与Jenkins集成,并且Jenkins有构建记录,所以可以看到历史构建曲线图,通过曲线图可以清 ...
- docker-mysql-使用docker运行mysql8
1, 下载镜像, 我用的是8 docker pull mysql: 2, 启动镜像 docker run \ --name mysql8 \ -p : \ -v /Users/wenbronk/Con ...