HyperBeast的博客

成长之路

自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 POJ 1182 食物链

环形的关系,A并查集表示同类,B表示x捕食y,C类表示x被y捕食 最后,POJ上莫名的多组数据WA,cin会TLE #include <iostream> #include <string> #inclu...

2018-08-15 14:51:58

阅读数 44

评论数 0

原创 重要逆序对

普通的逆序对就不详细讲了,此时计数的顺序关系和排序的顺序关系是等价的。 而对于重要的逆序对来讲,原来的排序顺序并不能够反应计数的顺序,因此计数与排序的顺序要分开。思想还是与普通逆序对类似。 #include <iostream> #include ...

2018-08-14 18:49:51

阅读数 630

评论数 0

原创 Ubuntu 16.04 Cuda 8.0 Opencv 3.1.0 Anaconda2 Caffe 安装

sudo add-apt-repository ppa:graphics-drivers/ppa sudo apt-get update sudo apt-get install nvidia-384 sudo apt-get install mesa-common-dev sudo apt-ge...

2018-01-23 02:35:26

阅读数 109

评论数 0

原创 HDU 6198 矩阵快速幂

ans=F(2*i+3)-1 #include using namespace std; typedef long long ll; const int maxn=100005; const ll mod=998244353; const int maxm=2; typedef struct ...

2017-09-18 21:40:25

阅读数 299

评论数 0

原创 关于尺取法的一些例子

最近做了一些关于尺取法的题,大概明白了一些套路。 首先固定左端点,不断地去取右端点,直到区间尽头或者不满足条件,然后判断是否满足条件,如果不满足条件一般情况下是到了尽头,然后去最值,然后删去一个左端点再在新的一个左端点上不断地去取右端点,这样整个算法的复杂度为O(n) POJ 3061  尺...

2017-09-04 15:05:37

阅读数 229

评论数 0

原创 POJ 1061 青蛙的约会 一元线性同余方程

两只青蛙如果能碰面则需满足(y-x)+(n-m)*t=0 (mod L),即转化为求解一元线性同余方程(n-m)*t=(x-y) (mod L),直接套模版即可,注意控制解的范围  #include #include #include #include #include using nam...

2017-08-27 21:46:35

阅读数 149

评论数 0

原创 CodeForces Sorting by Subsequences

·英文题,述大意:       输入一个长度为n的无重复元素的序列{a1,a2……an}(1 ·分析:       对子序列排序,最终竟然可以使得整个序列都排好序,那么我们可以清晰地发现:每一个子序列排序一定可以将它含有的元素全部放到全序列排序后的对应位置。例如,对于序列{4,1...

2017-08-26 01:35:15

阅读数 302

评论数 0

原创 2017 多校训练第十场 HDU 6178 Monkeys 最小点覆盖+树形DP

题目大意: 给你N个点的一棵树,现在有K只猴子,猴子们不会落单,也就是说,在同一个联通块中,至少有两只猴子。 现在我们希望砍尽可能多的边,使得这K只猴子分部在若干个联通块中,使得满足上述条件。 输出剩下的最少的边数。 思路: 这题O(n)做竟然卡读入优化。。。。。...

2017-08-25 00:07:41

阅读数 256

评论数 0

原创 2017 第十场多校训练 HDU 6181 Two Paths 次短路+Dijkstra

/* 裸的次短路 不断更新v->u的次短路,直到v->u的次短路只比最短路小 */ #include #include #include #include using namespace std; #define ll long long #define INF 1e18 #d...

2017-08-24 23:24:00

阅读数 295

评论数 0

原创 2017 多校训练第九场 HDU 6168 Numbers 贪心枚举

因为a数组都是正数,那么根据定义:混合之后的数组中最小的两个数必然是在a数组的,因此先选取这两个数,然后贪心枚举。 比赛的时候,没有枚举b数组的数,因此map就自动生成了许多数,造成MLE。 现在重写一遍倒是想明白了。 AC代码: #include using namespace std...

2017-08-22 22:48:00

阅读数 174

评论数 0

原创 HDU 5656 CA Loves GCD 枚举GCD+容斥

题意:给你一个数目为n的集合,求这个集合所有非空子集的最大公约数。 思路:题目给的数据范围为1到1000,那么这个集合的非空子集的最大公约数必然不超过1000,并且也不超过这个集合的最大值。 那么从最大值枚举到1,然后进行容斥即可。 AC代码: #include using namesp...

2017-08-14 21:21:36

阅读数 132

评论数 0

原创 CodeForces round 428 div2 only

A 很简单的贪心 #include using namespace std; const int maxn=105; int num[maxn]; int main(int argc, char const *argv[]) { int k,n; while(cin>>n>...

2017-08-13 10:46:27

阅读数 143

评论数 0

原创 浅谈博弈--从HDU上几道题学习博弈知识

HDU 2147 题目链接 代码如下: #include using namespace std; int main(int argc, char const *argv[]) { int n,m; while(~scanf("%d %d",&...

2017-08-12 19:17:16

阅读数 244

评论数 0

原创 2016 ACM青岛区域赛题解

A 水题,直接暴力模拟即可。 #include #define lson l,m,rt<<1 #define rson m+1,r,rt<<1|1 const int maxn=40000; typedef long long ll; int main(int argc...

2017-08-11 12:36:05

阅读数 1618

评论数 0

原创 2017 多校训练第六场 HDU 6097 Mindis

给出一个圆的半径,然后给出两个点P,Q的坐标,都不超出圆而且|OP|=|OQ|,问圆上一点到P和Q的距离之和最小是多少。 根据题解写了一份程序,请各位大佬参考 #include using namespace std; // #define test TEST int main(int ar...

2017-08-10 23:40:36

阅读数 125

评论数 0

原创 2017 多校训练第六场 HDU 6106 Classes

逻辑题 根据容斥原理,选课程A的包括选有课程AB,课程AC以及课程ABC的。 因此想要求到一个班级最大的人数,那么就是求只选A,B,C,AB,AC,BC,ABC的人数之和。 如果有一门课程的人数小于0,那么跳过认为此数据错误,不做处理。 #include using namespace ...

2017-08-10 20:38:47

阅读数 221

评论数 0

原创 2017 多校训练第六场 HDU 6098 Inversion

题意很明显 比赛的时候算了一下暴力的话,时间复杂度大概为O(n^2),我写的一个算法只用前缀最大值优化了左边的最值,右边暴力,答案是会T的。 幸好队友用一种类似筛法的方法过了,下面是他的算法: #include #include using namespace std; const in...

2017-08-10 17:56:39

阅读数 125

评论数 0

原创 2017 多校训练第五场 HDU 6085

#include using namespace std; const int maxn=50005; unsigned a[maxn],b[maxn],c[maxn]; const int mod=2; void setA(int p,int x){ int p1=p/32,p2=p...

2017-08-09 15:07:03

阅读数 154

评论数 0

原创 2017 多校训练第五场 HDU 6092 Rikka with Subset

很多个较小的数字可以随机组合成较大的数字,所以B数组从小到大开始遍历,除了空集,最小的那个存在的个数对应的数字必然是a数组中的数字。 每求出这一部分之后,更新后续的B序列。 分析完后,主要的难点就是怎么去让已求出来的A序列随机组合,更新后续的B序列直接减就可以了。看成01背包问题,让m为背包去...

2017-08-08 21:53:50

阅读数 284

评论数 0

原创 2017 多校训练第四场 HDU 6069 Counting Divisors

计算每个素数的贡献,对于[l,r]中的大素数另外计算 #include using namespace std; // #define test TEST / typedef long long ll; const ll mod=998244353; const ll maxn=1e6+10; ...

2017-08-07 00:03:08

阅读数 180

评论数 0

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