\(4.5\)省选测试\(solution\)

题面可是我精心准备(咕咕咕)了一周写出来的,大家就当看故事吧(那里面的人物确实是存在的,\(E\)就是本人啦,也算是对一段经历的回忆吧,所以这套考试的题目叫——忆)

暴力分给了\([20,40]+30+[30,60]=[80,130]\)

\(std\)的代码量\(1kb+1kb+2kb\)

因为出题人自己也不喜欢很长的代码,所以就找了几个较短的题

知识点考察

\(T1:wqs\)二分\(+\)斜率优化\((P5308)\)

\(T2:\)小清新结论题\((CF351E)\)

\(T3:\)图论,最小路径覆盖\((P5769)\)

总的来说,知识点考察比较全面,还是不错的

预计得分情况人均\(100+100+[30,60]=[230,260]\)

思维难度系数\(Lv4\)

代码难度系数\(Lv2\)

综合难度系数\(Lv3\)

\(T1\)

比较显然的,既然出现了恰好\(k\)次的限制,比较容易想到\(wqs\)二分,每次需要\(O(n)\)转移

考虑优化\(O(n^2)\)

正推式子\(:\)

\(f[i]=f[j]+\frac{i-j+1}{n-j}\)

发现并不是很好搞

那么考虑一下倒推

\(f[i]\)表示从后往前进行选人还剩\(i\)个人的最大贡献

\(f[i]=\max(f[j]+\frac{i-j}{i})\)

\(f[i]=\max(f[j]+1-\frac{j}{i})\)

直接以\(i^{-1}\)为斜率就好了

凸性证明的话,如果\(k\)越大,价值越多,我们每决策一次就减去一部分贡献就好了

\(T2\)

首先全部取正

\(a_1...a_n\)

那么我们考虑代价

对所有的\(i<j\)

要产生逆序对

\(Sit_1:a_i<a_j\)

\(sol_1:j取反\)

\(sol_2:i,j取反\)

\(Sit_2:a_i>a_j\)

\(sol_1:\)都不取反

\(sol_2:j\)取反

那么对于每一个\(i\)进行两个决策

我们考虑我们决策的话为了保证逆序对不重复

那么我们只需要对于目前最大的数字求一下贡献就好了,或者说,每个数都会比自己小的数进行逆序对统计

那么我们的贡献就是取正,右边小的,取负,左边小的,直接求就好了

\(T3\)

原本是要出\(NOI2016\)循环之美的

至于换题的原因嘛,\(MD\)代码怎么才\(1kb,\)教练不得吐槽我\(?\)

那我换成\(2kb\)的目前的\(T3\)了。。。\(kx\)

对于航线之间的关系建图,然后就成了最小路径覆盖问题

直接建一建图,写一个网络流板子就好了

建图的话\(:\)

考虑怎么才能从航线\(i->j\)

\(d_i+t(x_i,y_i)+p_{y_i}+f(y_i,x_j)\leq d_j\)

后记

并没有打算出很难的题,找了几道有意思的题就出了

其实做了这么多题,感觉一道题最快乐的地方是能体会到这道题的乐趣,这个算法的精妙

或许目前成绩是唯一衡量标准,但是,对一个事物的喜欢不仅仅是无论怎样都要取得好成绩,能每天在自己热爱的事业上努力着,也是一件快乐的事,\(OI\)嘛,是乐趣,如果沾染太多功利和虚伪,那就不快乐了,不是吗\(?\)

考试最开心的事也是思考的过程啊,即使最后可能没有想通,但是那份过程也是难得的快乐\(\sim\)

每个人的人生都是联通图,没有到达终点之前,我们就没资格说失败\(!\)

\(2022.4.5--Eternal\underline{}Battle\)

4.5省选模拟solution的更多相关文章

  1. 【洛谷比赛】[LnOI2019]长脖子鹿省选模拟赛 T1 题解

    今天是[LnOI2019]长脖子鹿省选模拟赛的时间,小编表示考的不怎么样,改了半天也只会改第一题,那也先呈上题解吧. T1:P5248 [LnOI2019SP]快速多项式变换(FPT) 一看这题就很手 ...

  2. @省选模拟赛03/16 - T3@ 超级树

    目录 @description@ @solution@ @accepted code@ @details@ @description@ 一棵 k-超级树(k-SuperTree) 可按如下方法得到:取 ...

  3. 省选模拟赛 project

    solution: 最小割问题. 建如下边: (S,i,Ai)代表选用A语言编写第i个项目: (i,T,Bi)代表选用A语言编写第i个项目: 其后注意要反向连边 (i,j,D)代表选用B语言编写第i个 ...

  4. 省选模拟赛第四轮 B——O(n^4)->O(n^3)->O(n^2)

    一 稍微转化一下,就是找所有和原树差距不超过k的不同构树的个数 一个挺trick的想法是: 由于矩阵树定理的行列式的值是把邻接矩阵数值看做边权的图的所有生成树的边权乘积之和 那么如果把不存在于原树中的 ...

  5. [省选模拟]Rhyme

    考的时候脑子各种短路,用个SAM瞎搞了半天没搞出来,最后中午火急火燎的打了个SPFA才混了点分. 其实这个可以把每个模式串长度为$K-1$的字符串看作一个状态,这个用字符串Hash实现,然后我们发现这 ...

  6. [省选模拟]array

    这题真是太神了! 考试的时候冲着四十分写了个$O(\frac{N^3logN}{32})$的制杖算法. 然后就狠狠的T掉了.如果没有充分的理解单调性和应用单调性就只有10分的傻逼分拿了. 首先考虑枚举 ...

  7. NOI2019省选模拟赛 第五场

    爆炸了QAQ 传送门 \(A\) \(Mas\)的童年 这题我怎么感觉好像做过--我记得那个时候还因为没有取\(min\)结果\(100\to 0\)-- 因为是个异或我们肯定得按位考虑贡献了 把\( ...

  8. NOI2019省选模拟赛 第六场

    传送门 又炸了-- \(A\) 唐时月夜 不知道改了什么东西之后就\(A\)掉了\(.jpg\) 首先,题目保证"如果一片子水域曾经被操作过,那么在之后的施法中,这片子水域也一定会被操作&q ...

  9. 省选模拟赛 arg

    1 arg (arg.cpp/in/out, 1s, 512MB)1.1 Description给出一个长度为 m 的序列 A, 请你求出有多少种 1...n 的排列, 满足 A 是它的一个 LIS. ...

随机推荐

  1. forms组件补充与ModelForm简单使用与cookie与session

    目录 forms组件钩子函数 forms组件字段参数 字段参数 validators详解 choices详解 widget详解 forms组件字段类型 ModelForm简单使用 cookie与ses ...

  2. TyepScript学习

    前提 JS缺陷 (1)变量频繁变换类型,类型不明确难以维护 TS定义 (1)定义 以JavaScript为基础构建的语音,一个JavaScript的超集,扩展js添加了类型, 可以在任何支持js的平台 ...

  3. 我的第一个开源作品Kiwis2 Mock Server

    我的第一个开源作品Kiwis2 Mock Server,目前公测中,欢迎大家提供宝贵意见. 代码:https://github.com/kiwis2/mockserver 主页:https://kiw ...

  4. git clone 问题

    转自 git clone出现 fatal: unable to access 'https://github.com/...'的解决办法(亲测有效) - 山村码农 - 博客园 (cnblogs.com ...

  5. 2021.02.27【NOIP提高B组】模拟 总结

    T1 欧拉筛质数时若 \(i\) 是质数且没有被用过就顺便用于计算结果,复杂度 \(O(n)\) #include<bits/stdc++.h> using namespace std; ...

  6. JAVA学习之第一个HelloWorld程序

    第一个HelloWorld程序 第一步,创建java类型的文件 第二步,在创建文件的目录中打开cmd窗口 第三步,使用javac 命令将java文件编译为.class类型的字节码文件 第四步,使用ja ...

  7. 『忘了再学』Shell流程控制 — 36、for循环介绍

    目录 1.for循环介绍 2.示例 语法一举例: 语法二举例: 3.for循环总结 4.练习:批量解压缩脚本 方式一:批量解压缩 方式二:批量解压缩 1.for循环介绍 for循环是固定循环,也就是在 ...

  8. python基础知识-day9(数据驱动)

    1.数据驱动的概念 在自动化测试中,需要把测试的数据分离到JSON,YAML等文件中. 2.YAML 的相关知识 YAML 入门教程 分类 编程技术 YAML 是 "YAML Ain't a ...

  9. 集成学习——Adaboost(手推公式)

  10. MySQL-1-概念

    数据库相关概念 DB:数据库(database):存储数据的"仓库".它保存了一系列有组织的数据 DBMS:数据库管理系统,又称为数据库软件(产品),用于管理DB中的数据 SQL: ...