你问蒟蒻为什么一天写两篇每日题解? 难道每日坚果你不能一天吃两包吗? 题目链接 哇…这道题第一反应就是二分答案[太明显了 枚举答案 就那个“关键节点到这些点中距离的最小值的最大值”[蒟蒻读了好几遍…… 若枚举到mid 则判定答案为mid时,覆盖所有特殊点的最少点数能否不超过m 嗯 这很点分治 对于一个子树 我们要处理到它里面没有没被覆盖的点 或者有到该子树根距离小于mid的[它可以放在以后解决 那什么时候要选点呢? 自然是上面两个条件都不满足的时候 也就是离子树根最远的未被覆盖特殊点到子树根的距…
题目链接 这道题第一眼看去类比BANK-Cash Dispenser 不过1e6 * 1e6 = 1e12   分分钟MLE啊 想到优化 就yy到一种近似主席树的做法 来维护类似BANK的一堆序列 开心地打完 然鹅 MLE 陷入沉思 对一个值 有三种取得方式 一 存储 二 查找 三 推导 我们需要知道一个数后的另一个数在哪里 前者的最优方式已经凉了[或许有更优?请路过神犇指教 三看起来好像不大可行... 那就二吧 但线性查找肯定凉的 想到log级优化 Log + 查找 = 二分查找啊 但是原数列…
题目链接 题意: 有一棵环套树 求最少从多少个节点出发能沿边走过整棵树 环套树 并查集求联通块 有几块就砸几个 太简单不发代码了 不过某大佬的环套树找环dfs让我研究了好久… 贴一下以Orz #include<iostream> #include<cstdio> using namespace std; ; int vis[MAXN],pa[MAXN]; int n,ans; inline void dfs(int x,int type) { ) { ) { ++ans;//新环…
题目链接 : [POI2006]KRA-The Disks 好有既视感啊... 注意一下输入输出 输入是从上到下输入箱子的宽度 输出是最上面的积木停在哪一层 即 箱子高度 - 积木高度 + 1 在初始情况下 对于一层 我们只需要它上面所有层中宽度最小的那层 于是维护这样的一个数列 对于一个插入的值 如果它比前一个数小 那么直接插入 否则插入前一个数的值 比如示例数据 (第i + 1行为插入a[i]后的结果) 5 6 4 3 6 2 3 5 5 5 5 5 4 5 5 4 3 5 5 4 3 3…
题目链接 [POI2005]DWU-Double-row wwwww 之前写了半小时 一卡机 没啦QAQ 简单说一下吧 [吐血ing 这道题长得好二分图啊 所以本能地连边 一种是A边 连可交换的数对 一种是B边 连相同的数字 然后才看题干[Facepalm 发现要求使同一侧没有重复颜色的最小交换次数 然后发现 AB都连上仿佛可做 由于最多两个相同数字 数对也是一对一 每一条长度连起来大于1的路都是A-B-A-B…… 不在一个联通快里的点没有相互影响 现在考虑同色同侧 只有这种情况 边的起点和终点…
[POI2008]MAF-Mafia 很容易看出是拓扑 但不容易想出来怎么做[可能是我太菜 首先 入度为零的人是肯定死不了的 接着 我们分成环和链分析 对于一个链 最多的情况就是顺着一个个开枪 最后剩一个( (n - 1) -> (n), (n - 2) ->(n - 1) …… ) 最少的情况就是死一半(1->2, 3->4……) 对于一个环 它和链基本上一样 区别在于从任何一个人开始都不会影响结果 这个性质很有用 因为当有环接在链上时 最多的情况下环上的点会全部挂掉 void…
[POI 2008&洛谷P3467]PLA-Postering Description Byteburg市东边的建筑都是以旧结构形式建造的:建筑互相紧挨着,之间没有空间.它们共同形成了一条长长的,从东向西延伸的建筑物链(建筑物的高度不一). Byteburg市的市长Byteasar,决定将这个建筑物链的一侧用海报覆盖住.并且想用最少的海报数量,海报是矩形的. 海报与海报之间不能重叠,但是可以相互挨着(即它们具有公共边),每一个海报都必须贴近墙并且建筑物链的整个一侧必须被覆盖(意思是:海报需要将一…
我也不知道为啥我就想把POI的题全都放到一篇blog里写完. POI 2005 SAM-Toy Cars 贪心,每次选下次出现最晚的. POI 2006 KRA-The Disks 箱子位置单调,所以记录现在的箱子位置和前缀最小值,向上枚举就行. OKR-Periods of Words 戳这 POI 2007 OSI-Axes of Symmetry 戳这 MEG-Megalopolis 树剖 or dfs序上维护前缀和. POI 2010 GIL-Guilds 按照洛谷的题面,可以发现灰点就…
LeetCode 题号739中等难度 每日温度 题目描述: 根据每日 气温 列表,请重新生成一个列表,对应位置的输入是你需要再等待多久温度才会升高超过该日的天数.如果之后都不会升高,请在该位置用 0 来代替. 例如,给定一个列表 temperatures = [73, 74, 75, 71, 69, 72, 76, 73],你的输出应该是 [1, 1, 4, 2, 1, 1, 0, 0]. 提示:气温 列表长度的范围是 [1, 30000].每个气温的值的均为华氏度,都是在 [30, 100] …
每日温度 请根据每日 气温 列表,重新生成一个列表.对应位置的输出为:要想观测到更高的气温,至少需要等待的天数.如果气温在这之后都不会升高,请在该位置用 0 来代替. 例如,给定一个列表 temperatures = [73, 74, 75, 71, 69, 72, 76, 73],你的输出应该是 [1, 1, 4, 2, 1, 1, 0, 0]. 提示:气温 列表长度的范围是 [1, 30000].每个气温的值的均为华氏度,都是在 [30, 100] 范围内的整数. 解题思路 一.针对数组中每…
Description 霸中智力测试机构的一项工作就是按照一定的规则删除一个序列的数字,得到一个确定的数列.Lyx很渴望成为霸中智力测试机构的主管,但是他在这个工作上做的并不好,俗话说熟能生巧,他打算做很多练习,所以他希望你写一个程序来快速判断他的答案是否正确. Input 第一行为一个整数 \(m\): 第二行包括 \(m\) 个用空格分开的整数 \(a_i\),组成了最初的序列: 第三行为一个整数 \(n\),表示 \(n\) 个Lyx经过一系列删除得到的序列,每个序列两行,第一行给出长度…
题目 B. Peculiar Movie Preferences time limit per test 2 seconds memory limit per test 512 megabytes input standard input output standard output Mihai plans to watch a movie. He only likes palindromic movies, so he wants to skip some (possibly zero) sc…
2083: [Poi2010]Intelligence test Time Limit: 10 Sec  Memory Limit: 259 MBSubmit: 241  Solved: 96[Submit][Status] Description 霸中智力测试机构的一项工作就是按照一定的规则删除一个序列的数字,得到一个确定的数列.Lyx很渴望成为霸中智力测试机构的主管,但是他在这个工作上做的并不好,俗话说熟能生巧,他打算做很多练习,所以他希望你写一个程序来快速判断他的答案是否正确. Input…
POI2010题解 我也不知道我为什么就开始刷POI了 有些题目咕掉了所以不完整(我都不知道POI到底有多少题) [BZOJ2079][Poi2010]Guilds (貌似bz跟洛谷上的不是一个题?) 并查集判孤立点就行了. #include<cstdio> #include<algorithm> using namespace std; int gi(){ int x=0,w=1;char ch=getchar(); while ((ch<'0'||ch>'9')&a…
在实际的项目开发中,经常会有一些涉及到导入导出的文档的功能.apache开源项目之一poi对此有很好的支持,对之前的使用做一些简要的总结. 1,导入jar 为了保证对格式的兼容性,在项目的pom.xml添加这三个jar: <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>3.13</version> &l…
库 为了效率搞了这么一个库: 现在版本号1.14(一月十四日更新版本囧..) http://pan.baidu.com/s/1c0SoGfu [source] http://pan.baidu.com/s/1c0UqCXq [precompiled] 版权之类就随他去吧..WTFPL.. 用法:释放在include文件目录里就可以使用#include <poi.h>啦..!(当然对于lemon.cena之类也适用) 或者如果不要求评测..可以用#include "poi.h"…
正规.严谨.精妙. -POI 发现POI(波兰信息学奥赛)的题都很有意思.于是开刷bzoj上的poi题目(按ac人数降序..).顺手写一写题解,加深印象. 为了防止一篇文章过于长,打算每五道题另起一篇文章. BZOJ 1103 : [POI2007]大都市meg 给一棵树,每次可以把树上的一些边标记了,问一个点与根之间需要走多少没有标记的边. 这个可以把这颗树遍历得到一个dfs序每第一次经过一个点的时候记录为+1,第二次经过一个点的时候记录为-1,然后记录每个点第一次经过时在序列里的位置f[i]…
Intelligence System Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submission(s): 1904    Accepted Submission(s): 824 Problem Description After a day, ALPCs finally complete their ultimate intelligence system…
HDU1789(Doing Homework again)题解 以防万一,题目原文和链接均附在文末.那么先是题目分析: [一句话题意] 给定任务分数和其截止日期,每日可完成一任务,输出当罚分尽可能小时的最小罚分. [题目分析] 由于写的时候就知道是贪心了(专项练习= =||),所以要设计贪心策略,但是应该先处理数据以便使用.由于要求罚分尽可能小,那么我们就根据罚分来排序.根据罚分从大到小排序,如果罚分相同则根据日期从小到大排序.(现在想想觉得似乎日期排不排都行..)那么我们的贪心策略应该尽可能保…
bzoj 2197: [Usaco2011 Mar]Tree Decoration 树形dp..f[i]表示处理完以i为根的子树的最小时间. 因为一个点上可以挂无数个,所以在点i上挂东西的单位花费就是i所在子树里的最小单位花费.. 所以每次求f[i]只要使子树里的数量都满足要求就好了..i的祖先还要更多的话随时可以选某个节点多挂一些.. f[i]=sum{f[j]}+mincost[i]*max(need[i]-sum{need[j]},0)..(j是i的儿子,mincost[i]表示子树i里的…
续.....TAT这回不到50题编辑器就崩了.. 这里塞40道吧= = bzoj 1585: [Usaco2009 Mar]Earthquake Damage 2 地震伤害 比较经典的最小割?..然而一开始还是不会QAQ 和地震伤害1的区别在于这题求的是最少的损坏牧场数目.把牧场拆点,因为要让1和被报告的点不联通,把1归到S集,被报告的点归到T集,就变成求最小割了. 具体建图: 假设点拆成x和x’,x和x‘间连边(就是等下要割的).被报告的点和1点:容量无穷大(不能割):其他点容量为1. 原图中…
UPD:我真不是想骗访问量TAT..一开始没注意总长度写着写着网页崩了王仓(其实中午的时候就时常开始卡了= =)....损失了2h(幸好长一点的都单独开了一篇)....吓得赶紧分成两坨....TAT.............. —————————————————————————————————————————————————————————————————————————————— 写(被虐)了整整一个月b站上usaco的金组题...然而到现在总共只写了100道上下TAT(当然是按AC人数降序排…
这场说实话确实水(逃*1),表示差一点就AK了(逃*2),然而被卡两个特判的我\(ssfd\)...\(qwq\) 表示这是第一次发整场比赛的题解...还请各位大佬原谅我太蒻写的垃圾啊\(qwq\)... 难度:据出题人之一\(sqn\)小\((da)\)姐\((ge)\)姐\((ge)\)说大概是难度倒序排列...但是个人感觉其实都不难(逃*3)...所以差一点就AK了(逃*4) \(A\) 数字权重 题目描述:设一个\(n\)位数的最高位为\(a_1\),最低位为\(a_n\),对于给定的\…
C - Candles 题解 点燃的一定是连续的一段,枚举左端点即可 代码 #include <bits/stdc++.h> #define enter putchar('\n') #define space putchar(' ') #define pii pair<int,int> #define fi first #define se second #define mp make_pair #define MAXN 1000005 #define mo 999999137 #…
link 前几天补完了某一场很早以前的div1,突然想来更博客,于是就有了这篇文章 A The Beatles 显然若起点和第一次到达的位置距离为 d ,那么经过的不同站点数为 $\frac{nk}{\gcd(d,nk)}$ . 假设距离起点最近的快餐店是 1 ,枚举距离第一次到达的位置最近的快餐店是多少, $2^2$ 枚举起点和终点在左还是右,更新答案即可. #include<bits/stdc++.h> #define rep(i,x,y) for (int i=(x);i<=(y)…
因为灵巧实在太弱辽不得不做点noip续下命QQAQQQ 2018 积木大赛/铺设道路 傻逼原题? 然后傻逼的我居然检查了半天是不是有陷阱最后花了差不多一个小时才做掉我做过的原题...真的傻逼了我:( #include<bits/stdc++.h> using namespace std; #define ll long long #define rp(i,x,y) for(register ll i=x;i<=y;++i) +; ll n,d[N],ans; inline ll read…
POI2015题解 吐槽一下为什么POI2015开始就成了破烂波兰文题目名了啊... 咕了一道3748没写打表题没什么意思,还剩\(BZOJ\)上的\(14\)道题. [BZOJ3746][POI2015]Czarnoksiężnicy okrągłego stołu 这个题真的神仙. \(p=0\),答案是\([n=1]\). \(p=1\),答案是\([n=1]+[n=2,k=0]\). \(p=2\),只有至多两种方案,即\(n\)左手边坐\(n-1,n-3...\),右手边坐\(n-2,…
NOI2018前的每日记录 开头 今天是\(2018.7.2\),不知不觉已经这么久了.本来还是高一的小蒟蒻,过不了多久就要成为高二的老年选手了. 再过半个月我也要去\(NOI\)打酱油了.我这种D类蒟蒻当然是去打酱油的啊 发现我自己最近状态差的不行,索性开一个坑记录一下自己每天干了些啥,状态什么的怎么样吧. 和省选前一样吧,也就是流水账+做题的一些记录,顺带加上一点自己的感悟吧. 差不多就是这样了.但是现在已经是晚上了,今天我就不写今天发生的事情了. 听说明天要考试,所以我从明天开始记录,这样…
写在前面的一些话 如果我NOIP没退役,这大概会写成一个系列吧,所以这算是系列的开始,要写一些奇怪的东西? 首先解释下什么叫“拔钉子”,其实就是在钉子上做题嘛......至于钉子具体是个什么东西就当面或者QQ问我好了=.= 然后如果写成系列的话前面这些应该都是POI了,那就说说POI好了.我个人还是很喜欢POI的出题风格的,基本上没有什么 Phantasm码农题/仙人板板板子题/很超巨大无比数据结构题(这都是什么啊喂(#`O′) ).思路在解题中比较重要,然后细节有时候也比较需要注意,至于码力这…