随笔分类 - OJ — BZOJ
摘要:4827: [Hnoi2017]礼物 Description 我的室友最近喜欢上了一个可爱的小女生。马上就要到她的生日了,他决定买一对情侣手 环,一个留给自己,一 个送给她。每个手环上各有 n 个装饰物,并且每个装饰物都有一定的亮度。但是在她生日的前一天,我的室友突 然发现他好像拿错了一个手环,而且
阅读全文
摘要:luogu传送门 2002: [Hnoi2010]Bounce 弹飞绵羊 Description 某天,Lostmonkey发明了一种超级弹力装置,为了在他的绵羊朋友面前显摆,他邀请小绵羊一起玩个游戏。游戏一开始,Lostmonkey在地上沿着一条直线摆上n个装置,每个装置设定初始弹力系数ki,当绵
阅读全文
摘要:3611: [Heoi2014]大工程 Description 国家有一个大工程,要给一个非常大的交通网络里建一些新的通道。 我们这个国家位置非常特殊,可以看成是一个单位边权的树,城市位于顶点上。 在 2 个国家 a,b 之间建一条新通道需要的代价为树上 a,b 的最短路径。 现在国家有很多个计划,
阅读全文
摘要:2286: [Sdoi2011]消耗战 Description 在一场战争中,战场由n个岛屿和n-1个桥梁组成,保证每两个岛屿间有且仅有一条路径可达。现在,我军已经侦查到敌军的总部在编号为1的岛屿,而且他们已经没有足够多的能源维系战斗,我军胜利在望。已知在其他k个岛屿上有丰富能源,为了防止敌军获取能
阅读全文
摘要:3786: 星系探索 Description 物理学家小C的研究正遇到某个瓶颈。 他正在研究的是一个星系,这个星系中有n个星球,其中有一个主星球(方便起见我们默认其为1号星球),其余的所有星球均有且仅有一个依赖星球。主星球没有依赖星球。 我们定义依赖关系如下:若星球a的依赖星球是b,则有星球a依赖星
阅读全文
摘要:1208: [HNOI2004]宠物收养所 Description 最近,阿Q开了一间宠物收养所。收养所提供两种服务:收养被主人遗弃的宠物和让新的主人领养这些宠物。每个领养者都希望领养到自己满意的宠物,阿Q根据领养者的要求通过他自己发明的一个特殊的公式,得出该领养者希望领养的宠物的特点值a(a是一个
阅读全文
摘要:1588: [HNOI2002]营业额统计 Description 营业额统计 Tiger最近被公司升任为营业部经理,他上任后接受公司交给的第一项任务便是统计并分析公司成立以来的营业情况。 Tiger拿出了公司的账本,账本上记录了公司成立以来每天的营业额。分析营业情况是一项相当复杂的工作。由于节假日
阅读全文
摘要:1001: [BeiJing2006]狼抓兔子 Description 现在小朋友们最喜欢的"喜羊羊与灰太狼",话说灰太狼抓羊不到,但抓兔子还是比较在行的, 而且现在的兔子还比较笨,它们只有两个窝,现在你做为狼王,面对下面这样一个网格的地形: 左上角点为(1,1),右下角点为(N,M)(上图中N=4
阅读全文
摘要:Solution emmm……差分约束裸题。注意收入额有正有负,所以不要像我一样自作聪明连0边。。。 还有,多组数据不清空,OI爆零见祖宗。。。 Code #include<bits/stdc++.h> using namespace std; const int N=105,M=1005; inl
阅读全文
摘要:Solution 由于上一题才做了一道二分图最大匹配的裸题,所以看到这一题就感觉很像二分图最大匹配。 显然白点不用管,因为不可能有任何贡献。但是行列交换咋整?正向思考受阻,别慌,这题只是判定性问题,我们反向思考。 假设已经有了一个主对角线都为黑点的矩阵,我们忽略掉矩阵中除主对角线上黑点以外的点,考虑
阅读全文
摘要:Solution 裸的二分图最大匹配,不用多说。 《论不认真读题的后果》。。。注意一但匹配失败就要break。。。 Code #include<bits/stdc++.h> using namespace std; const int N=1005; inline int read(){ int x
阅读全文
摘要:Solution 开始以为是贪心,想了1h想不出来正确的贪心策略。无奈看题解,发现是个很水的DP!!! 这告诉我思路一错是多么恐怖。。。 代码挺巧妙的,要滚动数组优化及记每层的maxl值。 Code #include<bits/stdc++.h> using namespace std; const
阅读全文
摘要:Solution 有点意思的思维题。 首先考虑到一个满足b是中位数的子序列中大于b和小于b的数字的个数一定是相等的。 设b在排列中的位置为p,可以对于每一个在p左边的位置i求出序列[i,p-1]中小于b的个数和大于b的个数,记为cnt1和cnt2;同理对于每一个在p右边的位置j求出序列[p+1,j]
阅读全文
摘要:Solution 水题。二进制拆分即可。 Code #include<bits/stdc++.h> using namespace std; int m,ans; int main(){ cin>>m; int s=1; while(m>=s){ ++ans; m-=s; s<<=1; } if(m
阅读全文
摘要:IOI2008/BZOJ1791 岛屿 题目大意是在一个基环树森林里求每一棵基环树的直径①的和。 其实就是树的直径的基环树升级版。我们先把环找出来,然后从环上的每一个节点x出发,并且不经过环上其他节点,做一次树形DP,求出x的子树中到x最远的路径长d[x]和x的子树的直径dp[x]。 那么基环树的直
阅读全文
摘要:Description Z国的骑士团是一个很有势力的组织,帮会中汇聚了来自各地的精英。他们劫富济贫,惩恶扬善,受到社会各界的赞扬。最近发生了一件可怕的事情,邪恶的Y国发动了一场针对Z国的侵略战争。战火绵延五百里,在和平环境中安逸了数百年的Z国又怎能抵挡的住Y国的军队。于是人们把所有的希望都寄托在了骑
阅读全文