03 2019 档案
摘要:恢复内容开始 这是很好的一道题 题目描述: 现在有一堆数字共N个数字(N<=10^6),以及一个大小为k的窗口。 现在这个从左边开始向右滑动,每次滑动一个单位,求出每次滑动后窗口中的最大值和最小值。 例如: 队列 [1 3 -1 -3 5 3 6 7] 窗口大小为3. 则如下图所示: 输入输出格式:
阅读全文
摘要:本文中或许会引进部分图片来自网络,但大多数内容均为原创qwq。 树状数组或者二叉索引树也称作Binary Indexed Tree,又叫做Fenwick树。 它的查询和修改的时间复杂度都是log(n),空间复杂度则为O(n). (这也是我们为什么使用树状数组的原因) 树状数组可以将线性结构转化成树状
阅读全文
摘要:离散化 简介 所谓离散化,一般是指数据范围很大,但是它的实际大小并不是很重要,我们只需要用到它们的相对大小关系。 或者是有些数本身很大,自身无法作为数组的下标来方便地处理 实现 C++ 离散化有现成的 STL 算法: 再贴一下自己手写的:
阅读全文
摘要:很抱歉,这个题我做的解法不是正解,只是恰巧卡了数据 目前数据已经更新,这个题打算过一段时间再去写。 目前在学习DP,这个会暂时放一放,很抱歉 这个题是一个国王游戏的变形(国王游戏就把我虐了qwq) 题目背景 还记得 NOIP 2012 提高组 Day1 的国王游戏吗?时光飞逝,光阴荏苒,两年 过去了
阅读全文
摘要:题目描述 总公司拥有高效设备M台,准备分给下属的N个分公司。各分公司若获得这些设备,可以为国家提供一定的盈利。问:如何分配这M台设备才能使国家得到的盈利最大?求出最大盈利值。其中M≤15,N≤10。分配原则:每个公司有权获得任意数目的设备,但总台数不超过设备数M。 输入输出格式 输入格式: 第一行有
阅读全文
摘要:NOIP 2014普及组 T4(话说一道PJ组的题就把我卡了一个多小时诶) 这道题在我看第一次的时候是没有意识到这是一道DP题的,然后就摁着DFS敲了好长时间,结果敲了一个TLE 这是DP!!! 下面开始进入正题 题目描述 给出如下定义: 例如,下面左图中选取第22、44行和第22、44、55列交叉
阅读全文
摘要:如果在阅读本文之前对于康托展开没有了解的同学请戳一下这里: 简陋的博客 百度百科 题目描述 N(1<=N<=20)头牛,编号为1...N,正在与FJ玩一个疯狂的游戏。奶牛会排成一行(牛线),问FJ此时的行号是多少。之后,FJ会给牛一个行号,牛必须按照新行号排列成线。 行号是通过以字典序对行的所有排列
阅读全文