自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

GOODPLACE

fbi好啊

  • 博客(28)
  • 资源 (1)
  • 收藏
  • 关注

原创 SSL_2549 得分

题意 给出时间和题目总数,再给出完成题目的时间和一个值,每次做完一道题可以拿到(剩余时间*它对应的值)分,现在求可以的得到的最大分数。 思路 先用它们之间的比例排序,之后再用01背包去选择做与不做就好了。 代码 #include<cstdio> #include<algorithm> using namespace std; int n,t,ans,f[100...

2018-03-31 15:38:45 113

原创 SSL_2548 旋转

题意 给出一个矩阵,里面有些黑色的方块,求旋转180度4次后每次里面黑色的方块有多少。每次旋转后这些方块都会和之前的叠加起来。 思路 找规律发现每次旋转出来的坐标变化,之后模拟就好了。 代码 #include<cstdio> int n,a[26][26],b[26][26],d[26][26],x,y; char c[26]; int tj()//统计这时有多少个黑...

2018-03-31 15:30:47 199

原创 SSL_2547 圆环

题意 给出n个数,输出第一个数/其它数的最简形式。 思路 可以用C++自带的gcd就可以求出答案,也可以手打的,我用手打的gcd过不了cena的评测,在题库上就可以。 代码 #include<cstdio> int n,fi,se,t; int gcd(int x,int y) { if (y) gcd(y,x%y); else return x; } i...

2018-03-31 15:23:13 133

原创 SSL_2545 奇数

题意 求出a~b中奇数的个数并输出。 思路 可以直接枚举a~b然后判断输出,我这里用的是别的方法。 代码 #include<cstdio> int a,b,s,as; int main() { scanf("%d%d",&a,&b); if (a%2==0) a++; if (b%2==0) b--; if (a!=...

2018-03-31 15:19:48 101

原创 SSL_2409 句子

题意 给出几个单词和一个句子,判断这几个单词变成这个句子的最小价值。每个单词变换的价值为:变换后的单词有多少位是和之前的单词不相同的。例如单词apple变成aplep,价值就是3,变成appel价值就是2。 思路 简单的动态转移方程,我们用f[i]代表用单词改到s[1~i]时的最小价值,显然得出f[i]=min(f[i],f[i-len[j]]+w),其中w为用这些单词改到s[i]的价值,l...

2018-03-31 15:16:08 208

原创 SSL_2408 比萨

题意 给出t种调料,还有n种规则,规则里的配料不能一起放,例如给出规则(1,2,3),说明(1,2,3)不能一起放,但是(1,2)是可以一起放的,如果给出规则(1,2),(1,2,3)是不能一起放的,现在求我们一共有多少种调法(包括不放调料)。 思路 我是先把规则给存起来,之后用搜索枚举出每种调法,再判断符不符合规则就好了。 代码 #include<cstdio> int...

2018-03-31 14:59:33 140

原创 SSL_2407 负进制

题意 求出一个数的负二进制数。 思路 这和正二进制数的求法差不多,每次除以-2取余倒序输出就好了。 代码 #include<cstdio> #include<algorithm> int n,a[101],k; int main() { scanf("%d",&n); do { k++; a[...

2018-03-31 14:51:04 161

原创 SSL_2406 约数

题目 给出一个数,求出它的约数的和。 思路 因为约数是两对两对出现的,所以我们可以只枚举到sqrt(n),每次加上i和n/i就好了。 代码 #include<cstdio> #include<cmath> int I,ans; int main() { scanf("%d",&I); for (int i=1;i<=sqr...

2018-03-31 14:48:12 184

原创 记录

咕咕咕

2018-03-27 21:13:27 372 3

原创 SSL_1312 旅行

题意 给出一个图,求从A点走到B点的路径中最大长度/最小长度的值最大,答案要化成最简分数的形式。 思路 先给每个边从大到小排序,然后枚举第一条边,再枚举其它的边加入集合里,直到A到B都在这个集合里,然后我们就可以判断当前枚举的最小的边和最大的边(最小的边为我们枚举的第一条边,因为我们排序过了,最大的边就是我们枚举的其它的边)是否比之前求出的答案的比例大,我们就可以替换,最后化成最简输出就...

2018-03-24 16:41:28 213

原创 洛谷_3371 单源最短路径(弱化版)

题意 给出一个有向图,求从一个点到其它每一个点的距离。 思路 因为比赛有一题要用SPFA,所以我来用SPFA做一下这题。我们先做一次spfa,然后从1到n输出从起点到点i的距离就好了。 代码 #include<algorithm> #include<queue> #include<cstdio> using namespace std; int n...

2018-03-24 16:06:58 593

原创 poj_2560 Freckles

题意 给出每个点的坐标,求这个图中的最小生成树。 思路 比起普通的最小生成树,我们这题要用勾股定律求出两个点之间的直线距离,剩下的最小生成树我们用并查集来做就好了。 代码 #include<cstdio> #include<cmath> #include<algorithm> using namespace std; int m,n; doub...

2018-03-23 20:40:38 203

原创 poj_2524 Ubiquitous Religions

题意 求一个图中互相连通的块数。 思路 每次读入两个点,我们就把第二个点的祖先指向第一个点的祖先,最后判断祖先没有改变的点,就是一个连通的块了,很简单。 代码 #include<cstdio> int n,m,father[50001],a,b; int find(int x) { int f1=x,f2; while (x!=father[x]) x...

2018-03-23 19:47:07 171

原创 poj_1611 The Suspects

题意 有n个学生,m个组,每个组有k个学生,一开始学生0感染了病毒,如果一个组里有一个学生感染了病毒那么这个组里的人都会被传染上病毒,有多组数据,n和m为0时表示输入结束。 思路 这道题是一个比较简单的并查集题目,我们每次读入一个组学生的编号时,就把2~k学生的编号和编号1学生的编号连在一起,表示他们是同一个组的,我们在操作“集”的时候要判断一下,如果这两个要连起来的学生不是同一个组的,...

2018-03-23 19:21:43 142

原创 【数据结构 并查集】luogu_2449 矩形

题意 给出几块矩形,如果两两之间相重合那我们就把它们看成同一个矩形,现在给出n个矩形左下角的坐标和右上角的坐标,求里面一共有多少个矩形。 思路 用并查集来存两个矩形是否为同一个矩形,我们读入后枚举两个矩形,如果它们两个重合并且之前没有存到并查集里,我们就让ans+1,最后输出n-ans就是答案了,这题我去看了洛谷大佬的题解,他说样例是错的,所以我一直被样例卡住了。 代码 #i...

2018-03-22 16:59:53 210

原创 SSL_1764 最小生成树

题意 给出点数为n的一个图,求里面的最小生成树。 思路 这里我用的是并查集的方法,先给边的权值排序,从最短的边开始选,如果连接这条边的两个点不在同一个集合里面我们就把它们放进去,答案加上这条边的权值就可以了。 代码 #include<cstdio> #include<algorithm> using namespace std; int n,ans,m,fat...

2018-03-22 16:52:02 124

原创 SSL_1862 删数

题意 有n个数,它们都有一个价值,现在我们从里面取出若干数,每次只能从左边或右边取连续的一段,每进行一次操作都会有一个操作值,操作价值为|xi – xk|*(k-i+1),如果只去掉一个数,操作价值为这个数的值,现在给出这n个数,求从里面能取出的最大价值。 思路 这道题是动态规划,我们设f[i][j]为删掉a[i~i+j]这段数的最大价值,显然可以得出动态转移方程 f[i][j]=max(f...

2018-03-19 20:57:07 211

原创 SSL_1863 俄罗斯方块

题意:    有几种俄罗斯方块,把它们放在c列的平台之间,给出每一列的高度,还有方块的种类,求出这俄罗斯方块能放出多少中方案数,(方块的每一个底面都要贴到平台上),例,这种方块最多有5中方法。思路:    这题很简单,就是根据每一列的高度做出相应的判断就好了。代码:#include<cstdio> #include<cstring> int n,p,a[101],ans; ...

2018-03-19 20:42:18 195

原创 SSL_1861 无限序列

题意:    有一个序列,初始状态是“1”,每次都可以让序列中的“1”变成“10”,让“0”变成“1”,最后可以得到"1011010110110101101..."求这个序列的a到b中一共有多少个“1”。思路:    找规律可以发现这个字符串每次操作都是加上前两次的字符串,类似斐波那契的算法,例如“101”是从“10”+“1”得来的,下一个字符串就是“101”加上前一个“10”变成“10110”,...

2018-03-17 15:55:33 200

原创 SSL_2344 刻录光盘

题目:    在PJOI2010夏令营快要结束的时候,很多营员提出来要把整个夏令营期间的资料刻录成一张光盘给大家,以便大家回去后继续学习。组委会觉得这个主意不错!可是组委会一时没有足够的空光盘,没法保证每个人都能拿到刻录上资料的光盘,又来不及去买了,怎么办呢? 组委会把这个难题交给了DYJ,DYJ分析了一下所有营员的地域关系,发现有些营员是一个城市的,其实他们只需要一张就可以了,因为一个人呢拿到光...

2018-03-17 07:17:51 279

原创 SSL_1500 最短路上的统计

题意:    给出一个图,每条边的权值都是1,求点a到点b间最短路上点的总数。思路:    我们先用floyd求出a到b的最短路,然后枚举中间点i,看f[a][i]+f[i][b]是否=f[a][b],如果等于,那i就是这个最短路上的点。代码:#include<cstdio> #include<cstring> int n,m,a,b,f[101][101]; int mi...

2018-03-16 21:26:10 164

原创 SSL_1021 产生数

题意:    给出一个数,再给出若干规则,每个规则有2个数,表示左边的数可以变成右边的数,我们用这些规则求最多能变出几个不相同的数,这些数中包括原来给出的数。思路:    这里可以用floyd求出两个数之间是否能变换,然后求出一个数能变成几个数(包括自己),最后用乘法原理我们就可以求出最多变出的数,答案要用高精度。代码:#include<cstdio> #include<cstr...

2018-03-16 21:16:21 187

原创 SSL_1763 观光旅游

题意:    求一个图的最小环。思路:    我们可以用floyd求也可以用dijkstra求,这里我两种方法都用了。代码:floyd#include<cstdio> #include<cstring> int n,m,f[501][501],dis[501][501],a,b,c,ans; int min(int x,int y){return x>y?y:x;} ...

2018-03-16 21:09:09 529

原创 SSL_2576 平台

题意:    给出几个棒子的坐标,它们的下面都要有支柱支撑,我们要求支柱的最小长度。例思路:    从一个平台往下枚举,答案加上它需要支柱的长度。代码:#include<cstdio> int n,h[101],x[101],y[101],l,r,ans; int main() { scanf("%d",&n); for (int i=1;i<=n;i++) scan...

2018-03-15 21:17:29 152

原创 SSL_2575 给出字符串

题意:    求在一个字符串中里出现了至少2次的子串的最大长度。思路:    三重循环枚举。代码:#include<cstdio> #include<string> using namespace std; char c[121],l; int pd(int x,int x1,int y)//判断x开头和x1开头长度为y的子串是否相等 { int a=x1,b=x; i...

2018-03-15 21:09:58 159

原创 SSL_1127 方程的解数

题意:    思路:    我们可以把这个方程一半的加数移到右边去,例k1x1p1+k2x2p2+k3x3p3=0移项变成k1x1p1+k2x2p2=-k3x3p3可以减少我们枚举x的次数,用哈希表存左边求出的情况有哪些,在右边枚举的时候我们就可以判断是否和左边相等,然后加上次数就可以了。代码:#include<cstdio> #define maxn 4000003 using na...

2018-03-15 21:06:23 351

原创 SSL_1692 魔板

题意:    把12345678按顺时针放到一个2*4的矩阵中,我们可以进行3种操作:A:上下两行交换;B:最右边一列的插入最左边;C:把中间的四个数字顺时针旋转。现在给出最终结果,求我们从12345678到最终结果的操作次数和操作序列。思路:    这道题是用的BFS,在判断节点的时候用哈希表优化一下。代码:#include<cstdio> #include<iostream&...

2018-03-10 11:27:03 205

原创 SSL_1125 集合

题意:    给出两个集合,求出它们之间的关系:1、A是B的一个真子集,输出“A is a proper subset of B” 2、B是A的一个真子集,输出“B is a proper subset of A” 3、A和B是同一个集合,输出“A equals B” 4、A和B的交集为空,输出“A and B are disjoint” 5、上述情况都不是,输出“I'm confused!”思路...

2018-03-07 21:07:03 246

最小生成树

这个文档讲述了最小生成树的相关知识,有兴趣的同学可以拿来学习

2018-01-13

空空如也

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

TA关注的人

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