• JSOI2014解题报告


    JSOI2014解题报告

    JSOI2014 拼图

    首先考虑暴力做法,就是枚举(low)(upp)然后贪心的选.

    这个时候考虑优化暴力显然不是很可行,考虑根号做法.

    如果(n leq sqrt{100000}),那么这个时候这样子的暴力复杂度就对是吧.

    如果(m le sqrt{100000}),考虑枚举每一个白点,找到离他最近的黑色点,把这段距离当成一个(low,upp)即可.

    JSOI2014 宅男计划

    宅的天数和送餐次数应该是相关的(肯定).

    然后直接退火就行了.

    JSOI2014 骑士游戏

    考虑令(dp_i)表示砍(i)号怪物所需要的最小魔耗,发现这是一个没有负权边的图,直接(dijkstra)转移(dp)即可.

    JSOI2014 支线剧情

    不难注意到这可以转换成一个上下界费用流,每条边([1,Inf)),直接跑即可.

    JSOI2014 保龄球

    比较神奇的(dp),个人认为是(JSOI2014)中最难的一题.

    首先考虑怎么样最优,肯定是一个全中后面跟补中,补中后面再放全中.

    如果当前是全中:

    • 后面要放失误那么肯定是放最大的.

    • 后面要放补中肯定是放第一个比较小的.

    如果当前是补中:

    • 后面要放失误肯定是放第一轮最大得分的.

    • 放补中就放最大的.

    注意到补中一定是按照第一个排序后放区间的,失误排个序取两次的最大值,然后就可以(dp)了.

    但是注意到有可能有附加局,所以你放的失误可能有特例不满足上述要求,考虑枚举即可.

    (f_{i,l,r,j,k,o})表示放了(i)轮全中,补中还剩下((l,r])中的可以用,失误放了前(k)个,有没有放特殊局,上一次是全中/补中/失误.

    随便转移即可.

    JSOI2014 奇怪的计算器

    一个比较常见的套路,考虑把所有的询问放在一起,这个答案序列肯定是根据初始值的大小单调的.

    直接拿线段树维护即可.(也可以用吉利线段树)

    JSOI2014 支线剧情2

    如果没有存档/读档直接对于每一个节点算儿子中的叶节点个数然后(dp).

    有了读档枚举哪一个儿子读档进行最优解即可.

    *JSOI2014 病毒分类

    没写.考虑将前后缀搞出来就是一个最小割跑出答案.

    至于输出方案可以考虑判断那些边边权为(0).

    JSOI2014 强连通图

    第一问很明显就是最大的强连通分量的大小.

    第二问就是要求缩点后入度为(0)和出度为(0)的点中取(max),因为你可以将这两个连起来然后让图联通.

    JSOI2014 歌剧表演

    考虑一次表演之后会把一些几何分成可以被划分和不能被划分两种.

    然后用(set)暴力维护即可.

    JSOI2014 士兵部署

    无脑题,每次加一个点,求动态凸包面积.

    直接二分就行了.

    JSOI2014 回文串

    考虑先用(manacher)求出最长回文半径,然后对于每一个([l,r])区间询问会对其造成限制,分成([l,mid])((mid,r])分开处理即可.

    JSOI2014 电信网络

    模板题,直接连边跑最大权闭合子图即可.

    JSOI2014 打兔子

    考虑每相邻的坑不会打,然后顺序(dp).

    问题在于(1)打了会对(n)有影响,直接钦定(1)开枪和(n)开枪即可.

    JSOI2014 序列维护

    模板线段树2,甚至只要改输入格式.

    JSOI2014 学生选课

    很明显可以二分,二分之后发现每一个学生只能选两门课目,跑个( ext{2-SAT})就行了.

    JSOI2014 矩形并

    首先考虑贡献是一个矩形,可以对于每一个矩形打上(1)标记,然后查其他的矩形,可以用二位树状数组维护.

    但是这样子会(MLE),考虑第一维变成扫描线即可.

  • 相关阅读:
    android手机rootROM下载地址
    mysql alter 语句用法,添加、修改、删除字段等
    java比较两个日期大小
    eclipse设置全局编码为UTF-8的方法
    Spring MVC 异步处理请求,提高程序性能
    ELK(ElasticSearch, Logstash, Kibana)搭建实时日志分析平台
    maven之发布项目到nexus【clean deploy命令】
    nexus-3本地下载jar的settipng.xml配置
    windows开启3306端口并用可视化工具访问远程mysql(授权访问)
    mysql 列转行,合并字段
  • 原文地址:https://www.cnblogs.com/fexuile/p/12284298.html
Copyright © 2020-2023  润新知