自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 收藏
  • 关注

原创 SSLOJ1382 车

Description在n*n(n≤20)的方格棋盘上放置n个车(可以攻击所在行、列),有些格子不能放,求使它们不能互相攻击的方案总数。Input第一行为棋盘的大小n第二行为障碍的数量m第三行到第m+3为m个障碍Output总数Sample Input421 12 2Sample Output14思路考虑装压dp,设fif_ifi​为i二进制每个1所在的列都已放时的方案数。fi=∑flowbit(i)f_i=\sum f_{lowbit(i)}fi​=∑flowbit(i)

2021-04-29 16:42:51 60

原创 P3130 [USACO15DEC]haybalesCounting Haybale P

题目题目思路大型板子题(线段树区间最小+区间和)记得开long longcode:#include<iostream>#include<cstdio>#include<algorithm>#include<cmath>#include<cstring> using namespace std;long long n,f,x,L,R;char u;long long tree[200005*4],lazy[200005*4

2021-04-28 21:21:29 110

原创 P2184 贪婪大陆

题目题目思路我们考虑把起点和终点分开存,让查询区间终点前的起点与查询区间起点前的终点做差即可。code:#include<iostream>#include<cstdio>#include<algorithm>#include<cmath>#include<cstring> using namespace std;int u,n,f,x,L,R;struct f{ int tree[4000008],lazy[400000

2021-04-28 21:19:56 68

原创 P4513 小白逛公园

题目题目思路修改+查询,是线段树没错了我们对普通线段树进行扩展,扩成4部分:最大子段和,一定包含第一位的最大子段和,一定包含最后一位的最大子段和,还有本段和。修改显然code:#include<iostream>#include<cstdio>#include<algorithm>#include<cmath>#include<cstring>using namespace std;int n,f,a[1000004],x

2021-04-28 19:41:54 73

原创 SSLOJ1565 将功补过

Description作为间谍专家的Elvis Han受窃取X星球军事中心的秘密情报,他已经成功进入军事中心。但是很不幸的是,在他还没有找到任务需要情报的时候就被发现,这时他清楚他不可能完成任务了,不过还有机会将功补过,也就是得到一些不如任务情报有价值的其他情报,如果得到的情报的总价值大于等于任务情报价值,他也不会受到惩罚。很幸运的是他已经得到的军事中心的地图,情报都是隐藏在各个道路上的,但是他只有时间遍历一定数量的路(时间宝贵呀!还要逃跑。。)现在你做为他的助手,给你地图和每个道路情报价值,希望你分析出

2021-04-17 07:16:08 68

原创 SSLOJ1371 鱼肉炸弹

Description舒克和贝塔终于下定决心要去营救被关押在众猫聚居的A城中的大米同志。  A城的构造是很奇怪的。A城中的所有N栋建筑沿着一条直线排列,而且没有两栋楼的高度是相同的。而大米同志就被关押在其中的某栋建筑中。每一栋建筑的顶上都是有一些猫们在看守的。如果按照从一端到另一端的顺序将所有的建筑编号为1到N,那么第i栋建筑的高度为Hi,顶上的猫的数量为Ci.  每一只猫不但可以看守住其所在建筑的楼顶,还可以看守住一些比它所在建筑要低的楼的楼顶。前提是没有被其他楼所挡住。A城中的建筑都是很高的,高到

2021-04-16 22:12:08 69

原创 SSLOJ1230 战略游戏

DescriptionBob喜欢玩电脑游戏,特别是战略游戏。但是他经常无法找到快速玩过游戏的办法。现在他有个问题。他要建立一个古城堡,城堡中的路形成一棵树。他要在这棵树的结点上放置最少数目的士兵,使得这些士兵能了望到所有的路。注意,某个士兵在一个结点上时,与该结点相连的所有边将都可以被了望到。  请你编一程序,给定一树,帮Bob计算出他需要放置最少的士兵。Input输入文件中数据表示一棵树,描述如下:  第一行 N,表示树中结点的数目。  第二行至第N+1行,每行描述每个结点信息,依次为:该结点

2021-04-16 21:38:48 67

原创 SSLOJ1229 技能树

Description玩过Diablo的人对技能树一定是很熟悉的。一颗技能树的每个结点都是一项技能,要学会这项技能则需要耗费一定的技能点数。只有学会了某一项技能以后,才能继续学习它的后继技能。每项技能又有着不同的级别,级别越高效果越好,而技能的升级也是需要 耗费技能点数的。  有个玩家积攒了一定的技能点数,他想尽可能地利用这些技能点数来达到最好的效果。因此他给所有的级别都打上了分,他认为效果越好的分数也越高。现在他要你帮忙寻找一个分配技能点数的方案,使得分数总和最高。Input第一行是一个整数n(1

2021-04-16 21:31:49 83

原创 SSLOJ 1743 Debug

Description经过了一整夜的激战,rc的部队终于攻下了虫族的首都Bugzilla。现在,rc决定亲自带领一队突击队员在虫族庞大的地道中寻找他的宿命之敌—Bug。  Bugzilla由N个基地组成。这N个基地被N-1段双向地道连接在一起,每段地道都连接两个基地,并且保证任意两个基地之间都可以通过地道互相到达。Bug就藏在其中的某段地道中。  开始时rc可以乘坐运输机降落在任何一个基地。每次到达一个基地时,rc都可以选择呼叫运输机将他和他的部队运输到任意另一个基地,或者进入与这个基地相邻的一段地道

2021-04-08 21:17:03 89

原创 P2515 [HAOI2010]软件安装

题目题目思路和选课类似,都是树上01背包,这里就是选课+缩点(用拓扑即可),方程的范围再改成m>=j>=wx,j>=k>=w子节点m>=j>=w_x,j>=k>=w_{子节点}m>=j>=wx​,j>=k>=w子节点​,这里的初值也有修改,详见代码code:#include<iostream>#include<cstdio>#include<algorithm>#include<

2021-04-08 20:41:18 141

原创 SSLOJ 1608 皇宫看守

Description太平王世子事件后,陆小凤成了皇上特聘的御前一品侍卫。皇宫以午门为起点,直到后宫嫔妃们的寝宫,呈一棵树的形状;某些宫殿间可以互相望见。大内保卫森严,三步一岗,五步一哨,每个宫殿都要有人全天候看守,在不同的宫殿安排看守所需的费用不同。可是陆小凤手上的经费不足,无论如何也没法在每个宫殿都安置留守侍卫。帮助陆小凤布置侍卫,在看守全部宫殿的前提下,使得花费的经费最少。Input输入文件中数据表示一棵树,描述如下:第1行 n,表示树中结点的数目。第2行至第n+1行,每行描述每个宫殿

2021-04-08 17:10:05 221

原创 P2014 [CTSC1997]选课

题目题目思路树形dp典型题,设f[i][j]为从第i节课开始报j节课的最优值。fi,j=max(fi,k+fto(为i子节点),j−k),M+1>=j>=1,0<=k<jf_{i,j}=max(f_{i,k}+f_{to(为i子节点),j-k}),M+1>=j>=1,0<=k<jfi,j​=max(fi,k​+fto(为i子节点),j−k​),M+1>=j>=1,0<=k<jcode:#include<iostream

2021-04-08 15:58:20 155

原创 P2015 二叉苹果树

题目题目思路树形dp典型题,设f[i][j]为i节点保留j条边的最优值。sie[i]为子树大小,则有:fi,j=max(fi,k+fto(为i子节点),j−k−1+w(为i至to的边权)),min(sie[i],Q)>=j>=1,0<=k<jf_{i,j}=max(f_{i,k}+f_{to(为i子节点),j-k-1}+w(为i至to的边权)),min(sie[i],Q)>=j>=1,0<=k<jfi,j​=max(fi,k​+fto(为i子节点),

2021-04-07 21:17:28 90

原创 P1040 [NOIP2003 提高组] 加分二叉树

题目题目思路SSL的OJ不用输出前序遍历设f[i][j]为从i到j的最优解,root[i][j]为i到j的最优的根,则有fi,j=max(fi,k−1∗fk+1,j+fk,k),i<k<jf_{i,j}=max(f_{i,k-1}*f_{k+1,j}+f_{k,k}),i<k<jfi,j​=max(fi,k−1​∗fk+1,j​+fk,k​),i<k<j每更新f,就按定义更新root。开始时所有值为1,fi,if_{i,i}fi,i​为输入值。然后一个df

2021-04-07 20:19:59 63

原创 P1081 [NOIP2012 提高组] 开车旅行

题目题目思路坑爹码量题,慎做就是预处理+倍增,剩下请理解代码/jkcode:#include<iostream>#include<cstdio>#include<algorithm>#include<string>#include<cstring>#include<cmath>#include<queue>#include<deque>using namespace std;stru

2021-04-07 19:40:55 140

原创 P1257 平面上的最接近点对&P1429 平面最近点对(加强版)

题目题目&题目思路利用二分思想,划分子问题,显然这一步非常简单。本题难点在于合并,显然左右2边的点可以合并,但是我们还需要在左右各选一个点合并,怎么办?暴力n方过百万,dp得零蛋以上纯属搞笑这里我们已经有了一个候选答案d(来自2个子问题),我们离选择的中心点最多不能超过d,显然如果超过一定不是更优的,使用这条性质可以筛走一部分数。同时我们发现,若2点的纵坐标>=d,也不会更优,这样再暴力两两匹配即可。code:#include<iostream>#includ

2021-04-03 09:34:15 94

原创 SSLOJ 1135 二分查找

Description有一组数据,按从小到大的顺序建立排序的数组。然后读入一数x,查找x是否在数组中,并输出查找结果。Input第一行为一个正整数n(n<=10000)第二行为n个整数a[i](-231<a[i]<231-1)第三行为要查找的数xOutput若找到,输出x的位置;若找不到,输出“No Found.”Sample Input51 3 5 7 93Sample Output2思路标题即做法,不解释code:#include<iostream>

2021-04-03 08:38:52 80

原创 SSLOJ 1498 飞船赛

Description有N艘飞船进行比赛,它们的跑道为直线并互相平行。每个飞船的起跑位置均不相同。第i个飞船从Xi处开始向右行驶(Xi各不相同)。比赛开始后,它能在零时间内加速到最大速度并永远保持此速度。假设这里的比赛没有终点。  你的任务是算出比赛过程中一共有多少次“超车”。Input输入文件数据格式如下:第一行为一个整数N(1≤N≤250000)。接下来的N行,每行两个整数Xi(0≤Xi≤10^6)和Vi(0<Vi<100),描述了一艘飞船的起跑位置和最大速度。给出的飞船信息按照起跑

2021-04-03 08:37:17 129

原创 SSLOJ 2323 逆序对

DescriptionPrince对他在这片大陆上维护的秩序感到满意,于是决定启程离开艾泽拉斯。在他动身之前,Prince决定赋予King_Bette最强大的能量以守护世界、保卫这里的平衡与和谐。在那个时代,平衡是个梦想。因为有很多奇异的物种拥有各种不稳定的能量,平衡瞬间即被打破。KB决定求助于你,帮助他完成这个梦想。一串数列即表示一个世界的状态。平衡是指这串数列以升序排列。而从一串无序数列到有序数列需要通过交换数列中的元素来实现。KB的能量只能交换相邻两个数字。他想知道他最少需要交换几次就能使数列有

2021-04-03 08:34:33 93

原创 SSLOJ 1421 求第K小数

Description于给定n个元素的数级a[1…n],要从中找出第k小的元素。Input第一行是总数n和k,第二行是n个待比较的数。Output第K小数的位置。Sample Input5 323 8 91 56 4Sample Output1思路结构体+快排思想的分治code:#include<iostream>#include<cstdio>#include<algorithm>#include<string>#incl

2021-04-03 08:32:35 68

原创 P1138 第k小整数

题目题目思路利用快速排序思想可以优化时间,见代码code:#include<iostream>#include<cstdio>#include<algorithm>#include<string>#include<cstring>#include<map> using namespace std;long long a[100001],id[100001];long long n,k;void f(long

2021-04-03 08:30:55 103

原创 P1024 [NOIP2001 提高组] 一元三次方程求解

题目题目思路显然可以用公式,也可以使用二分方法。**cI

2021-04-03 08:17:45 112

原创 P1258 小车问题

题目题目思路可以推公式,但二分不是更香吗?与公式差不多,我们二分小车卸下甲的点即可。code:#include<iostream>#include<cstdio>#include<cstring>using namespace std;double a,b,c,d;double x;double myd(double x){ double s=a*x*x*x+b*x*x+c*x+d; return s;}int main(){ cin

2021-04-03 08:14:50 111

原创 CF559B Equivalent Strings

题目题目思路注意到这里的等价具有传递性,我们可以求出字典序最小的2个等价串并判断是否相等。code:#include<iostream>#include<cstdio>#include<cmath>using namespace std;string x,y;string f(int l,int r){ if ((r-l+1)%2==1) { string u=""; for (;l<=r;l++) u+=x[l]; retur

2021-04-03 08:12:45 99

原创 P7469 [NOI Online 2021 提高组] 积木小赛

题目题目思路暴力+hash乱搞code:#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>#include<map>#include<queue>#include<string>#include<cmath>using namespace std;long long n,ans;long lon

2021-04-01 16:12:38 186

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除