bzoj3728: PA2014Final Zarowki】的更多相关文章

  Description 有n个房间和n盏灯,你需要在每个房间里放入一盏灯.每盏灯都有一定功率,每间房间都需要不少于一定功率的灯泡才可以完全照亮. 你可以去附近的商店换新灯泡,商店里所有正整数功率的灯泡都有售.但由于背包空间有限,你至多只能换k个灯泡. 你需要找到一个合理的方案使得每个房间都被完全照亮,并在这个前提下使得总功率尽可能小. Input 第一行两个整数n,k(1<=k<=n<=500000). 第二行n个整数p[i](1<=p[i]<=10^9),表示你现有的灯…
[BZOJ3728]PA2014Final Zarowki Description 有n个房间和n盏灯,你需要在每个房间里放入一盏灯.每盏灯都有一定功率,每间房间都需要不少于一定功率的灯泡才可以完全照亮.你可以去附近的商店换新灯泡,商店里所有正整数功率的灯泡都有售.但由于背包空间有限,你至多只能换k个灯泡.你需要找到一个合理的方案使得每个房间都被完全照亮,并在这个前提下使得总功率尽可能小. Input 第一行两个整数n,k(1<=k<=n<=500000).第二行n个整数p[i](1&l…
3728: PA2014Final Zarowki Description 有n个房间和n盏灯,你需要在每个房间里放入一盏灯.每盏灯都有一定功率,每间房间都需要不少于一定功率的灯泡才可以完全照亮.你可以去附近的商店换新灯泡,商店里所有正整数功率的灯泡都有售.但由于背包空间有限,你至多只能换k个灯泡.你需要找到一个合理的方案使得每个房间都被完全照亮,并在这个前提下使得总功率尽可能小. Input 第一行两个整数n,k(1<=k<=n<=500000).第二行n个整数p[i](1<=p…
Search GO 说明:输入题号直接进入相应题目,如需搜索含数字的题目,请在关键词前加单引号 Problem ID Title Source AC Submit Y 1000 A+B Problem 10983 18765 Y 1036 [ZJOI2008]树的统计Count 5293 13132 Y 1588 [HNOI2002]营业额统计 5056 13607 1001 [BeiJing2006]狼抓兔子 4526 18386 Y 2002 [Hnoi2010]Bounce 弹飞绵羊 43…
暴力搜索出所有可行的形状,可以发现本质不同的形状数只有6000个左右. 对于每个形状,它的大小不超过$8\times 8$,故可以按照右下角为原点重建坐标系,用一个unsigned long long来存储. 然后对于每个中心,先进行第一步扩展,若能成功扩展,则扫描所有形状,看看是否匹配即可. 时间复杂度$O(6000nm)$. #include<cstdio> #include<algorithm> using namespace std; typedef unsigned lo…
从上到下枚举下底边,维护$a[i]$表示$i$向上延伸多少距离里面没有坏点,$b[i]$表示$i$向上延伸多少距离里面最多只有1个坏点. 设$l0[i],r0[i]$表示以$a[i]$为最小值,往左往右能延伸到哪里,$l1[i],r1[i]$表示以$b[i]$为最小值,往左往右能延伸到哪里. 枚举$i$,有两种情况: 1.$a[i]$为最小值,那么找到$l0[i]$,将其左边的数用$b$进行替代,然后再找到前驱$L$:或者找到$r0[i]$,将其右边的数用$b$进行替代,然后再找到后继$R$.…
Description 有n个房间和n盏灯,你需要在每个房间里放入一盏灯.每盏灯都有一定功率,每间房间都需要不少于一定功率的灯泡才可以完全照亮.  你可以去附近的商店换新灯泡,商店里所有正整数功率的灯泡都有售.但由于背包空间有限,你至多只能换k个灯泡.  你需要找到一个合理的方案使得每个房间都被完全照亮,并在这个前提下使得总功率尽可能小. Input 第一行两个整数n,k(1<=k<=n<=500000).  第二行n个整数pi,表示你现有的灯泡的功率.  第三行n个整数wi,表示照亮每…
如果没有长度为偶数的限制,新建一个点向所有奇点连边,跑欧拉回路即可,显然此时一定存在欧拉回路,因为所有点度数都为偶数. 考虑长度为偶数的限制,将每个点拆成两个点放进一个二分图里,那么每条原图中的边在二分图中会对应两条边,一条长度为偶数的路径在二分图中显然是由某部分出发再走回这部分.我们需要让每条原图中的边恰在二分图中出现一次,且保证所有点度数为偶数,这样仍然跑个欧拉回路就完了. 对原图任意取一棵生成树.让非树边任意连,然后通过树边调整度数以达到目的.注意到新建点并连边后,原图中所有点度数都为偶数…
Description 你有一个无向连通图,边的总数为偶数. 设图中有k个奇点(度数为奇数的点),你需要把它们配成k/2个点对(显然k被2整除).对于每个点对(u,v),你需要用一条长度为偶数(假设每条边长度为1)的路径将u和v连接.每条路径允许经过重复的点,但不允许经过重复的边.这k/2条路径之间也不能有重复的边. Input 第一行有两个整数n,m(2<=n,m<=250000),分别表示点数.边数,m为偶数. 接下来m行,每行两个整数a,b(1<=a,b<=n,a≠b),表示…
有n个房间和n盏灯,你需要在每个房间里放入一盏灯.每盏灯都有一定功率,每间房间都需要不少于一定功率的灯泡才可以完全照亮. 你可以去附近的商店换新灯泡,商店里所有正整数功率的灯泡都有售.但由于背包空间有限,你至多只能换k个灯泡. 你需要找到一个合理的方案使得每个房间都被完全照亮,并在这个前提下使得总功率尽可能小. Input 第一行两个整数n,k(1<=k<=n<=500000). 第二行n个整数pi,表示你现有的灯泡的功率. 第三行n个整数wi,表示照亮每间房间所需要的最小功率. Out…