1000-1250
Mmh2000
这个作者很懒,什么都没留下…
展开
-
1113: [Poi2008]海报PLA
题目链接题目大意:N个矩形,排成一排. 用尽量少的矩形海报Cover住它们题解:首先观察到,答案上界为n,矩形的宽度是没有用的 从左到右遍历,对于一个矩形,若其左边有和它高度相同的,且中间没有更低的,就可以用一张海报覆盖它们之间的部分,用单调栈(单调不下降)维护即可我的收获:……#include <iostream>#include <cstdio>using namespace std;in原创 2017-07-17 11:13:42 · 275 阅读 · 0 评论 -
1053: [HAOI2007]反素数ant
题目链接题目大意:x的约数个数记为g(x),如果某个正整数x满足:g(x)>g(i) 0<i<x,则称x为反质数,求出不超过n的最大的反质数题目大意:x的约数个数记为g(x),如果某个正整数x满足:g(x)>g(i)~~0<i<x,则称x为反质数,求出不超过n的最大的反质数题解:x是反质数->x的因子多->x的质因子多,由一个数的因子个数计算式,取小质因子更优,然后大力搜,可以玄学剪枝一下我的收获原创 2017-08-21 20:41:41 · 329 阅读 · 0 评论 -
1191: [HNOI2006]超级英雄Hero
题目链接题目大意:给定n个锦囊和m个问题,每个问题可以使用给定的两个锦囊之一,必须连续答题,求最多答上多少题题解:题看成一组点,锦囊看成一组点,大力匹配即可我的收获:naive#include <iostream>#include <cstring>#include <cstdio>#include <algorithm>using namespace std;const int M=100原创 2017-08-19 09:25:24 · 243 阅读 · 0 评论 -
1068: [SCOI2007]压缩
1原创 2017-08-16 09:34:55 · 279 阅读 · 0 评论 -
1212: [HNOI2004]L语言
1原创 2017-08-15 23:26:21 · 278 阅读 · 0 评论 -
1052: [HAOI2007]覆盖问题
1原创 2017-08-15 23:26:06 · 316 阅读 · 0 评论 -
1087: [SCOI2005]互不侵犯King
1原创 2017-08-15 23:25:40 · 286 阅读 · 0 评论 -
1058: [ZJOI2007]报表统计
1原创 2017-08-15 23:25:28 · 245 阅读 · 0 评论 -
1042: [HAOI2008]硬币购物
题目链接题目大意:共有4种硬币,面值分别为c1,c2,c3,c4。某人去商店买东西,去了tot次。每次带di枚ci硬币,买s的价值的东西。请问每次有多少种付款方法题解:容斥原理设f[i]为不考虑数量限制时得到面值i的方案数(完全背包)设f[i]为不考虑数量限制时得到面值i的方案数(完全背包)由容斥原理,ans=价值为s时的方案数(超过限制)−∑(一种硬币超过限制)+∑(两种硬币超过限制)−∑(三种硬原创 2017-08-15 22:44:14 · 343 阅读 · 0 评论 -
1189: [HNOI2007]紧急疏散evacuate
题目链接题目大意:给定一个m*n的地图,每个点有可能是空地、墙或者出口,每个空地初始站着一个人,每一时刻可以向周围走1格,门每一时刻只能通过一个人,求最短多少时间后所有人可以撤离题解:以每个门为起点bfs,求出其到所有人的最短路,bfs时不能经过门将门按照时间拆点(限制1s通行1人),然后可以二分答案或者枚举答案记每个人为i,每个门为j[x],其中x为时间记每个人为i,每个门为j[x],其中x为时间原创 2017-08-12 16:02:16 · 355 阅读 · 0 评论 -
1150: [CTSC2007]数据备份Backup
题目链接题目大意:一条数轴上有n个点,要求选出k对点,求这k对点的距离和的最小值 题解:首先肯定选相邻的点,这个显然 求出n-1个相邻点对间的距离,问题转化为给定一个长度为n−1的序列,要求选出k个不相邻的数(因为题目要求一个点最多只能在一条线段中)使得和最小容易想到贪心,每次取最小,但是…… 费用流能跑,但是会T网络流的正确性基于退流操作,那么贪心也可以加一个修正操作因为...原创 2017-08-24 11:33:23 · 327 阅读 · 0 评论 -
1084: [SCOI2005]最大子矩阵
题目链接题目大意:这里有一个n*m的矩阵,请你选出其中k个子矩阵,使得这个k个子矩阵分值之和最大。注意:选出的k个子矩阵 不能相互重叠。题解:开始没看见m<=2…… 因为m只能取1/2,明显分类讨论m=1 f[i][j]表示前i个选择了j段的最大和,不选的话f[i][j]=f[i−1][j]f[i][j]表示前i个选择了j段的最大和,不选的话f[i][j]=f[i-1][j] 选p+1……原创 2017-08-28 12:20:23 · 244 阅读 · 0 评论 -
1222: [HNOI2001]产品加工
题目链接题目大意:有A、B两台机器,来加工的产品可以由其中任何一台机器完成,或者两台机器共同完成。不同的机器加工同一产品所需的时间不同,若同时由两台机器共同进行加工,所完成任务又会不同。选择每个产品的加工方式,最小化所需时间题解:这个状态…… f[i]表示第一台机器工作时间为i时,第二台机器的最少工作时间似乎没接触过这种把两个量绑在一起的状态……长姿势了注意到时间<=5,类似背包的转移即可,有三种原创 2017-08-24 19:44:55 · 309 阅读 · 0 评论 -
1064: [Noi2008]假面舞会
题目链接题目大意:给定n个人,分别戴着k类面具(k>=3,k未知),其中戴着i类面具的人能看见第i%k+1类人的面具,给定一些人互相看到的关系,求k的最大最小值题解:ORZ,ORZ,ORZ我的收获:考虑问题的思路,跪啊#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>using namespac原创 2017-07-17 10:57:32 · 313 阅读 · 0 评论 -
1197: [HNOI2006]花仙子的魔法
题目链接题目大意:求若干个n维球体最多能把n维空间分为多少部分题解:可以手玩一下1,2维,然后就可以看题解了 Orz,Orz我的收获:跪啊#include<cstdio>#include<iostream>using namespace std;long long f[18][101];int m,n;int main(){ scanf("%d%d",&m,&n);f[0][0原创 2017-07-24 21:56:00 · 264 阅读 · 0 评论 -
1031: [JSOI2007]字符加密Cipher
1原创 2017-07-24 21:55:18 · 240 阅读 · 0 评论 -
1148: [CTSC2007]挂缀pendant
题目链接题目大意:n个珠子,每颗有重量和载重量,一个合法的挂坠需要其上每一个珠子下面的所有珠子的重量和小于这个珠子的载重量 求挂坠最长长度及此时最小重量题解:显然可以用经典的堆维护贪心方法来搞 现在思考按照什么排序理性(感性)瞎猜一下,发现按照c+w排序 证明似乎这种题都这样排?这个题没有数据范围!!!!我开始的时候用int WA了,我就都替换成long long了……我的收获: 套路深#in原创 2017-07-23 19:03:35 · 428 阅读 · 0 评论 -
1044: [HAOI2008]木棍分割
题目链接题目大意:有n根木棍, 第i根木棍的长度为Li,n根木棍依次连结了一起, 总共有n-1个连接处. 可以砍最多m次,要求长度最大的一段长度最小, 并求此时的方案数题解:第一问显示是二分+贪心检验 考虑第二问f[i][j]表示前i个分成j块满足条件的方案数f[i][j]=∑ki−1f[k][j−1],(sum[i]−sum[k]≤len)f[i][j]=\sum\limits_{k}^{i-1原创 2017-07-23 17:10:09 · 607 阅读 · 0 评论 -
1013: [JSOI2008]球形空间产生器sphere
题目链接题目大意:给出n维空间中给出n+1个点的坐标,求球心坐标题解:设球心坐标为(x1,x2,x3,…,xn)(x_1,x_2,x_3,…,x_n) 第i个点的坐标为(ai1,ai2,ai3,…,ain)(a_{i1},a_{i2},a_{i3},…,a_{in}) 由题意得到n+1个方程 (a11−x1)2+(a12−x2)2+(a1n−xn)2=r2(a_{11}-x_1)^2+(a_{原创 2017-08-06 21:52:58 · 350 阅读 · 0 评论 -
1022: [SHOI2008]小约翰的游戏John
题目链接题目大意:反Nim游戏,即取走最后一个的人输题解:丢链接跑我的收获:i good vegtable a#include<cstdio>#include<cstring>#include<iostream>#include<algorithm>using namespace std;int n;bool Calculate(){ int i,x,xor_sum=0;原创 2017-08-06 20:09:27 · 240 阅读 · 0 评论 -
1174: [Balkan2007]Toponyms
1原创 2017-08-02 23:27:30 · 384 阅读 · 0 评论 -
1124: [POI2008]枪战Maf
题目链接题目大意:给定n个神枪手,每个神枪手瞄准一个人,以一定顺序开枪,问最少和最多死多少人题解:首先考虑无环的情况,对图分层,入度为0为1层,必定存活存活最多:奇数层存活 存活最少:只有第一层存活考虑有环存活最多:画图发现环的答案为len/2 存活最少:只剩下1个注意:在程序中统计的是存活的最大,最小人数,输出时用n减去即可我的收获:思路强啊#incl...原创 2017-07-24 21:56:23 · 394 阅读 · 0 评论 -
1045: [HAOI2008]糖果传递/3293: [Cqoi2011]分金币
题目链接题目大意:有n个小朋友坐成一圈,每人有ai个糖果。每人只能给左右两人传递糖果。每人每次传递一个糖果代价为1。求没人均等最小代价题解: uva原题,蓝书上有我的收获:原创 2017-04-02 18:51:21 · 400 阅读 · 0 评论 -
1011: [HNOI2008]遥远的行星
题目链接题目大意:有一些行星,求受到的引力题解:正常暴力是O(n^2)的,n方过10万?发现题目要求误差%5,乱搞,暴力计算前面的,后面的近似……我的收获:我觉得我应该去学一下浮点精度误差……#include <bits/stdc++.h>using namespace std;double m[100005], sum[100005];int main(){ int n;原创 2017-04-23 15:01:15 · 319 阅读 · 0 评论 -
1131: [POI2008]Sta
题目链接题目大意:给出一个N个点的树,找出一个点来,以这个点为根的树时,所有点的深度之和最大题解:比较套路的树形dp,自顶向下更新答案 首先dfs得到以1为根的答案 考虑将选择的点由1移动到1的儿子v 有size[v]个点dep-1,(n-size[v])个点dep+1即f[v]=f[x]+n−2∗size[v]即f[v]=f[x]+n−2∗size[v]即f[v]=f[x]+n...原创 2017-10-19 17:14:04 · 409 阅读 · 0 评论 -
1076: [SCOI2008]奖励关
题目链接题目大意:K次抛出宝物,每次抛出等概率的抛出n个物品中的一个,每个物品有一个价值,想获得每个物品必须先获得一些另一些物品。求最终获得的价值的期望题解:f[i][s]表示第i次,宝物状态为s的期望得分f[i][s]表示第i次,宝物状态为s的期望得分,转移显然 但是需要逆推……因为正着会遇到一些不可能状态我的收获:~~~#include <iostream>#include <cstdio>原创 2017-12-21 20:58:54 · 236 阅读 · 0 评论 -
1180: [CROATIAN2009]OTOCI/2843: 极地旅行社
题目链接题目大意:一些点,每个点有一个权值。有三种操作:连边,单点修改权值,求两点之间路径上点的权值和题解:套路LCT~~~我的收获:……#include <iostream>#include <cstdio>#include <cstring>#include <algorithm>using namespace std;const int M=30005;const int INF=1原创 2017-12-22 16:16:32 · 241 阅读 · 0 评论 -
1056: [HAOI2008]排名系统/1862: [Zjoi2006]GameZ游戏排名系统
题目链接题目大意:维护动态修改,查询排名,查询排名从l开始后10人的姓名题解:hash一下直接上平衡树 按照分数降序,第二关键字为时间升序排序,这个处理一下就可以了…… 输出区间的操作理论上应该把区间提取出来然后中序遍历输出,但是我懒得写了…… 然后我因为hash挂了调了2h……改成双模终于过了……我的收获:数据结构劲啊#include <iostream>#include <cstdio>原创 2017-12-15 21:27:23 · 396 阅读 · 0 评论 -
1079: [SCOI2008]着色方案
题目链接题目大意:有n个木块排成一行,从左到右依次编号为1~n。你有k种颜色的油漆,其中第i种颜色的油漆足够涂ci个木块。所有油漆刚好足够涂满所有木块,即c1+c2+…+ck=n。相邻两个木块涂相同色显得很难看,所以你希望统计任意两个相邻木块颜色不同的着色方案。题解:大力暴力!当然过不了 当状态过于复杂时,一般考虑简化状态,其中最常用的就是合并相同的状态 考虑到两种都能涂k次的油漆本质相同,用f原创 2017-12-25 21:15:56 · 301 阅读 · 0 评论 -
1009: [HNOI2008]GT考试
题目链接题目大意:求不包含m位给定串T的n位串S的方案数题解:令fijf_{ij}表示在SS第ii位时,S[i−j+1]S[i - j + 1] ~S[i] S[i]与TT的前缀T[1]T[1] ~ T[j]T[j]相同的SS串的数量,那么考虑转移,即什么样的fi−1,xf_{i-1,x}能转移到fi,jf_{i,j} 由此联想到KMP里的失配函数. 枚举第j位的数字(0..9), 当第j位失配原创 2018-02-02 21:18:12 · 244 阅读 · 0 评论 -
1055: [HAOI2008]玩具取名
题目链接题目大意:有WING四个字母,每个字母可以用WING中若干组连续两个字母替代,给你一个字符串,求它可以还原成WING中哪几个字母题解:f[l][r][c]f[l][r][c]表示[l,r][l,r]能否合成字母c,直接枚举断点转移即可我的收获:naive#include <bits/stdc++.h>using namespace std;const int N=255;char p[4]原创 2018-01-29 11:27:57 · 306 阅读 · 0 评论 -
1176: [Balkan2007]Mokia/2683: 简单题
题目链接题目大意:维护一个W*W的矩阵,每次操作可以增加某格子的权值,或询问某子矩阵的总权值题解:CDQ分治先按x排序保证每一层处理时x都有序,然后对时间分治询问拆成4个差分计算我的收获:orz CDQ#include <bits/stdc++.h>using namespace std;#define ll long long#define N 200005int s,w,m;int ans原创 2018-02-26 08:45:43 · 295 阅读 · 0 评论 -
1211: [HNOI2004]树的计数
13131原创 2018-03-20 22:20:38 · 230 阅读 · 0 评论 -
1231: [Usaco2008 Nov]mixup2 混乱的奶牛
题目链接题目大意:n头奶牛排队,一个队伍为混乱的当且仅当其中任意相邻两牛编号相差超过k,求混乱队伍方案数题解:状压dp f[i][j]表示以第i头牛结尾,状态为j的方案数f[i][j]表示以第i头牛结尾,状态为j的方案数 转移时枚举一下新的结尾的牛我的收获:……#include <iostream>#include <cstring>#include <cstdio>#include <a原创 2017-09-13 08:03:16 · 420 阅读 · 0 评论 -
1093: [ZJOI2007]最大半连通子图
题目链接题目大意:定义半联通图:对于图中任意两点u,v,存在一条u到v的有向路径或者从v到u的有向路径,求出图中最大半联通子图大小和数量题解:容易发现缩点后DAG中的最长链就是答案(不同SCC之间有边就可以满足单向联通的条件),方案数的话,类似最短路松弛操作那样搞一搞就行了 PS:要处理重边我的收获:#include <iostream>#include <cstdio>#include <c原创 2017-07-09 18:58:49 · 270 阅读 · 0 评论 -
1012: [JSOI2008]最大数maxnumber
题目链接题目大意:维护序列,资磁向末尾插入一个数,查询末尾往前几个数的最大值,强制在线(雾题解:线段树和乱搞树状数组做法都显然是模板,我写了个比较科学的单调队列做法,代码量小到不知道哪里去了 由以下两点 1.如果一个节点在队列中既没有时间优势(入队早)也没有值优势(值更大),那么显然无论在怎样的情况下都不会被选为最大值。 只在末尾选,可以满足以上的条件。 2.如果想要对这个数组进行原创 2017-02-01 20:40:10 · 433 阅读 · 0 评论 -
1046: [HAOI2007]上升序列
题目链接题目大意:多次询问长度为l的上升序列题解:我的收获:原创 2017-04-03 10:46:43 · 348 阅读 · 0 评论 -
1112: [POI2008]砖块Klo
题目链接题目大意:有n个数,希望有连续k个数大小相等,一次操作可以给一个数+或-1,求最少操作次数题解:考虑枚举每个长度为k的区间,只要有一个loglog级别的方法计算一个区间的答案,问题就解决了。容易发现区间的数都要统一为中位数,就是直线上很多点,选一个到所有点距离和最小的位置,证明类似蓝书某例题。这个可以用平衡树,权值树状数组/线段树,主席树,对顶堆维护我的收获:计算big和small重新理解了原创 2017-07-02 11:42:19 · 331 阅读 · 0 评论 -
1101: [POI2007]Zap/2045: 双亲数/2301: [HAOI2011]Problem b
题目链接题目大意:对于给定的整数a,b和d,有多少正整数对x,y,满足x<=a,y<=b,并且gcd(x,y)=d题解:令a′=[a/d],b′=[b/d]令a'=[a/d],b'=[b/d]∑i=1a∑j=1b[gcd(i,j)=k]\sum\limits_{i=1}^a\sum\limits_{j=1}^b[\gcd(i,j)=k]==∑i=1a′∑j=1b′[gcd(i,j)=1]\sum\l原创 2017-07-17 22:28:37 · 422 阅读 · 0 评论 -
1233: [Usaco2009Open]干草堆tower
题目链接题目大意:有 n 个干草堆排成一行,每堆有个宽度 ai,现在要且分成若干段,把每一段的干草拼起来,然后逐段堆砌,越左的段放在下面,且宽度要逐层非严格递减。求层数最多是多少层题解:好神啊,ORZ题解我的收获:………………#include <iostream>#include <cstdio>#include <algorithm>using namespace std;#define M原创 2017-09-21 07:35:30 · 504 阅读 · 0 评论