
2501-2750
Mmh2000
这个作者很懒,什么都没留下…
展开
-
2748: [HAOI2012]音量调节
题目链接题目大意:有初始数字x,max和n个数字z[i],每次必须在x上加或减z[i],数字不能超过max或小于0,求最大能达到的数字题解:bool型dp#include <iostream>#include <cstdio>#include <algorithm>using namespace std;const int M=55;int n,be,mx,c[M];bool f[M][原创 2017-03-05 08:28:42 · 411 阅读 · 0 评论 -
2705: [SDOI2012]Longge的问题
题目链接题目大意:求∑gcd(i, N)(1<=i <=N)题解:∑i=1ngcd(i,n)∑i=1ngcd(i,n) \sum_{i=1}^{n}gcd(i,n) =∑d|nd∑i=1n[gcd(i,n)==d]=∑d|nd∑i=1n[gcd(i,n)==d]=\sum_{d|n}^{}d\sum_{i=1}^{n}[gcd(i,n)==d] 令n′=[n/d]...原创 2017-08-16 21:14:03 · 251 阅读 · 0 评论 -
2697: 特技飞行
题目链接题目大意:n个单位时间,每个单位时间可以进行一项特技动作,每个特技动作有权值Ci,定义某次动作的价值为(距上次该动作的时间)*Ci,若为第一次进行该动作,价值为0,最大化总收益题解:显然每个动作只能做两次……(做一次无收益,大于两次浪费),那么直接贪心,把权大的放在两边我的收获:2333333#include <iostream>#include <cstdio>#include <cs原创 2017-08-09 21:54:29 · 374 阅读 · 0 评论 -
2667: [cqoi2012]模拟工厂
题目链接题目大意:现在你有一个工厂,初始生产力为1,每一时刻你可以进行如下操作: 1.将生产力提高1 2.生产一些产品,数量等于当前生产力的数值 然后你有n个订单,每一份有一个交易时间t,一个商品数量g和一个价格m,可以接或者不接,如果接就要在t时刻操作之前减少g的商品数量,然后得到m的钱 求最大收益题解:n很小,暴力枚举接受的订单 aq=∑qi=1giaq=∑i=1qgi...原创 2017-09-09 20:55:09 · 546 阅读 · 0 评论 -
2666: [cqoi2012]组装
题目链接题目大意:给定数轴上的m个点,共有n种颜色,要求在数轴上选定一个点,使这个点到每种颜色最近的点的平方和最小题解:Orz我的收获 :证明太神啦#include <iostream>#include <cstring>#include <cstdio>#include <vector>#include <algorithm>using namespace std;#define M原创 2017-07-23 10:08:38 · 385 阅读 · 0 评论 -
2654: tree
题目链接题目大意:给你一个无向带权连通图,每条边是黑色或白色。让你求一棵最小权的恰好有need条白色边的生成树。 题目保证有解。题解:容易发现,最小生成树中的白边数目随着白边边权增大而减少。二分一个x,给每条白边都加x,就可以愉快的搞了。为了使二分进行下去,条件是白边数>=即可。当然,有可能一直二分到最后也不会出现恰好有k条白边的情况,但题目保证有解,其实是有很多相等的黑白边,不用处理即可。我的收原创 2017-06-08 21:31:16 · 505 阅读 · 0 评论 -
2716: [Violet 3]天使玩偶/2648: SJY摆棋子
题目链接题目大意:平面动态加点,求与给出的点曼哈顿距离最近点题解:KD树模板题我的收获:23333#include <cstdio>#include <iostream>#include <cstring>#include <cmath>#include <algorithm>using namespace std;#define cmin(a,b) (a>b?a=b:a)#define原创 2018-01-31 07:27:11 · 2123 阅读 · 0 评论 -
2724: [Violet 6]蒲公英
题目链接题目大意:区间众数,强制在线题解:维护f[x][y]表示第i块到第j块的答案 只要能快速得出一个数在某个区间内出现次数即可 这里有两种方法,第一种是用vector二分,见hzwer还有一种方法是维护sum[i][j]表示数字i在第1块到第j块出现了多少次 然后一阵操作就可以做了……虽然理论上少一个log,但是我写的两种速度差不多……块大小约为n/logn−−−−−−√\sqrt{n/原创 2018-02-05 15:21:56 · 262 阅读 · 0 评论 -
2734: [HNOI2012]集合选数
题目链接题目大意:在{1,2,3,…..,n}的集合中选出一个子集。 该子集满足一条约束条件:若x在该集合中,那么2*x以及3*x不能在这个集合中,求方案数模1000000001题解:比较珂学的构造 黄学长题解我的收获:23333#include <iostream> #include <cstdio> #include <cstring> #include <cmath> #原创 2018-01-30 08:15:15 · 233 阅读 · 0 评论 -
2661: [BeiJing wc2012]连连看
题目链接题目大意:给出一个闭区间[a,b]中的全部整数,如果其中某两个数x,y(设x>y)的平方差x2-y2是一个完全平方数z2,并且y与z互质,那么就可以将x和y连起来并且将它们一起消除,同时得到x+y点分数。求最大得分题解:Orz 题解我的收获:拆点的原则?(#include <iostream>#include <cstdio>#include <cstring>#include <cm原创 2018-02-24 09:13:23 · 294 阅读 · 0 评论 -
2750: [HAOI2012]Road
题目链接题目大意:有向图,一条路径被称为最短路,当且仅当不存在从它的起点到终点的另外一条路径总长度比它小,两条最短路不同,当且仅当它们包含的道路序列不同,询问每条边经过的不同的最短路条数题解:蒟蒻只会floyd解法……简单暴力O(n2m)O(n^2m)也过不了…… Orz了题解后发现dijkstra可以在求最短路的同时将点按距源点的距离排序…… 依据这个,http://www.cn原创 2017-08-16 22:35:55 · 290 阅读 · 0 评论 -
2561: 最小生成树
1原创 2017-08-16 22:36:31 · 278 阅读 · 0 评论 -
2709: [Violet 1]迷宫花园
题目链接题目大意:网格图,给出时间L,v为通过一个格子的时间,求最大的v题解:二分+最短路原创 2017-03-18 14:17:54 · 601 阅读 · 0 评论 -
2743: [HEOI2012]采花
题目链接题目大意:给出一个数列,多次询问查询[L,R]中出现大于等于两次的数字种数题解:莫队做法类似1878HH的项链,但是这题数据太大。莫队会T。记pre[i]为每个位置i的数字的前一个相同数字出现的位置,若不存在则pre[i]=0。然后就可以搞了,类似于1878HH的项链#include <cmath>#include <cstdio>#include ...原创 2017-03-25 11:07:10 · 331 阅读 · 0 评论 -
2563: 阿狸和桃子的游戏
题目链接题目大意:给定一张无向图,每个点有点权,每条边有边权,两个人轮流选择点,若一条边的两端点被选择则这条边被选择,两人都想自己的得分-对手的得分最大,求最终先手得分-后手得分题解:Orz Orz我的收获:当条件难以处理时,可以改变条件,使其转化为简单问题#include <cstdio>#include <cstring>#include <iostream>#include <algo原创 2017-04-04 09:56:57 · 407 阅读 · 0 评论 -
2638: 黑白染色
题目链接题目大意:黑白矩阵,每次可以选择一个四联通块染色,求最少操作次数题解:将目标状态里相同颜色的联通块缩点,枚举起点,生成树里的最大节点深度就是需要的次数了如果最大深度是白色的话记得-1我的收获:bfs树#include <queue>#include <cstdio>#include <vector>#include <al...原创 2017-06-24 09:48:10 · 663 阅读 · 0 评论 -
2656: [Zjoi2012]数列(sequence)
123123原创 2017-07-14 20:24:12 · 370 阅读 · 0 评论 -
2659: [Beijing wc2012]算不出的算式
题目链接题目大意:给出p,q求这个题解:跪啊 丢链接跑1 2我的收获:考虑几何意义#include<cstdio>#include<cstring>#include<cstdlib>#include<cmath>#include<algorithm>#include<iostream>using namespace std;typedef long long LL;int main原创 2017-08-02 23:26:58 · 341 阅读 · 0 评论 -
2660: [Beijing wc2012]最多的方案
题目链接题目大意:把n拆分成一些斐波那契数和的形式,要求不同的方案中不能有相同的斐波那契数,求方案数题解:由于斐波那契数增长较快,int范围内只有不到50项,感觉可以暴力,但是不知道怎么暴……贪心的用最大的数将n分解,用p[]记录分解的方案贪心的用最大的数将n分解,用p[]记录分解的方案 每个斐波那契数都可以用它之前的两个数替换每个斐波那契数都可以用它之前的两个数替换f[i][1/0]表示选/不选原创 2017-08-25 15:06:30 · 248 阅读 · 0 评论 -
2733: [HNOI2012]永无乡
题目链接题目大意:有n个点,初始时有一些边。 每次操作要么加一条边,要么询问一个点所在联通块数值第k大的点。题解:并查集+权值线段树合并我的收获:线段树合并#include <iostream>#include <cstdio>#include <cstring>using namespace std;const int M=100005;const int TM=2000005;int原创 2017-08-28 14:59:22 · 272 阅读 · 0 评论 -
2729: [HNOI2012]排队
题目链接题目大意:某中学有 n 名男同学,m 名女同学和两名老师要排队参加体检。他们排成一条直线,并且任意两名女同学不能相邻,两名老师也不能相邻,那么一共有多少种排法呢?(注意:任意两个人都是不同的)题解:丧病的分类讨论,这一定是高中数学…… 题解 python大法好我的收获:22222# n!(A(n+1,2)*A(n+3,m)+2*(n+1)*A(n+2,m-1)*m) def mul(原创 2017-08-21 19:52:34 · 313 阅读 · 0 评论 -
2588: Spoj 10628. Count on a tree
题目链接题目大意:给定一棵N个节点的树,每个点有一个权值,对于M个询问(u,v,k),你需要回答u xor lastans和v这两个节点间第K小的点权。其中lastans是上一个询问的答案,初始为0,即第一个询问的u是明文题解:树上每个结点建一棵权值线段树记录其到根所有点的权值 查询(a,b)时,查询的是线段树a+线段树b-线段树lca(a,b)-线段树father[lca(a,b)],在权值线段原创 2018-02-24 10:19:45 · 202 阅读 · 0 评论