自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 hihocoder #1076:与链

题目描述:http://hihocoder.com/problemset/problem/1076看了题没有一点思路,然后就搜到了这篇blog:http://blog.csdn.net/my_acm_dream/article/details/44749819也是看了好久,好在最后搞明白了关键的一点就是:假如这k个数的二进制每个数最多有i位,那么如果每个数有i+1位的话,这

2016-04-28 11:26:09 1021

原创 zoj #3870:Team Formation

题目描述:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3870大概意思就是给你n个数,从中找两个,比如i和j,使得i^j>max(i,j),问有多少种方法看了题没有一点思路,然后就看了题解两个数a,b要满足这种条件,假设它们二进制的最高位分别是第i位和第j位,那么i != j,并且:比如i>j,那么b的第

2016-04-28 11:23:42 556

原创 poj #3971:scales

题目描述:http://poj.org/problem?id=3971第一次用数位dp,参见http://www.cnblogs.com/lvpengms/p/3926678.html#include #include #define MAX_N 1000000int N, L, D, dp[MAX_N][2];char w[MAX_N];int main(){ int

2016-04-26 14:26:36 441

原创 hihocoder #1104 : Suzhou Adventure

题目描述:http://hihocoder.com/problemset/problem/1104这道题用树形dp来解答,第一种方法容易想到,用dp[i][j]来表示以i为根节点的子树中恰好访问j个节点所获得的最大score,并且这j个节点中必须包含子树中所有必须访问到的节点。注意:如果一个节点是推荐节点,那么它的父节点也必须被访问。第一层循环,计算出子树i中必须被访问的节点,并且用t

2016-04-23 23:38:10 752

原创 hihocoder #1063:缩地

题目描述:http://hihocoder.com/problemset/problem/1063这道题用到树形dp来解,具体有两种方式来实现先看第一种:参考文章:http://blog.csdn.net/wsjingping/article/details/45875867dp[i][j]表示以i为根的子树中,恰好得到j价值所走的最短距离,但是最后可以不回到起点,故有两种状态

2016-04-22 14:27:17 692

原创 hihocoder #1035 : 自驾旅行 III

题目描述:hihocoder.com/problemset/problem/1035看了题目后没有任何思路,于是看了这篇文章:http://blog.csdn.net/acmmaxx/article/details/38023667解题思路:dp[i][0]:只有人可以走,且最后必须回来dp[i][1]:只有人可以走,最后可以不会来dp[i][2]:人车都可以走,且人和车都

2016-04-17 21:28:37 1316

原创 hiho一下 第二十周 线段树的区间修改

题目有了一些变化:查询区间的总和;将区间内的值都修改为指定值。因此可以对之前的代码进行修改,当修改的时候,修改所有被影响到的节点。但是这样做会TLE,题目中给出了提示,修改的时候,如果搜到了符合条件的区间,本应该继续向下修改,但是我们不往下搜了,用一个lazytag来标记这个节点,等到以后要用它的子节点的时候,再用lazytag更新左右孩子节点,这样就会节省时间。TLE代码:#incl

2016-04-12 15:03:25 393

原创 hiho一下 第九十三周 数论二·Eular质数筛法

快速得求解[1,N]这个区间内素数的个数用到了Eular质数筛法#include #include #define MAX_N 1000000#define MAX_P 78498char isPrime[MAX_N+1];int primeList[MAX_P+1];int main(){ int N, i, j, primeCount; scanf("%d",

2016-04-12 13:57:56 593

原创 hiho一下 第十九周 RMQ问题再临-线段树

相比于之前的题目,数据量扩大为10^6,因此使用线段树来实现有关线段树的详细分析用链表的方式实现#include #define MAX_N 1000000#define MAX_NODE 2000000 //一个二叉树有N个叶子节点,则总的节点数为2N-1 typedef struct NODE{ struct NODE *left, *right, *father; i

2016-04-11 20:33:54 413

原创 hiho一下 第十八周 RMQ问题再临

相比于之前的RMQ问题,这道题增加了修改功能,鉴于数据规模比较小,可以增加一个Adjust(),用于调整min[][]的值代码如下:#include #include #define MAX_N 10000 int weight[MAX_N], N;int min[MAX_N][14]; //min[i][j]存储从i开始,长度为2^j序列中的最小值 int Min(int

2016-04-09 10:13:59 489

原创 hiho一下 第十六周 RMQ-ST算法

RMQ (Range Minimum/Maximum Query)问题:对于长度为N的数列a,若干次查询,每次给出R和L,a[L——R]的最小(大)值,也就是说,RMQ问题是指求区间最值的问题。此题要求最小值首先进行预处理,计算从任意位置i开始的2^j长度的序列中的最小值,并存储到min[i][j]中,初始化min[i][0]=weight[i](weight[]存储数列),从i开始的

2016-04-08 21:02:55 485

原创 hiho一下 第九十二周 数论一·Miller-Rabin质数测试

用Miller-Rabin算法测试素数用了两种实现方式参考Wikipedia#includetypedef long long LL;//计算a*b(mod n) LL PowerMulti(LL a, LL b, LL n){ LL ans = 0; while(b){ if(b&1){ ans = (ans+a)%n; } b >>= 1; a

2016-04-08 13:18:59 554

原创 hiho一下 第九十一周 Events Arrangement

时间限制:20000ms单点时限:1000ms内存限制:256MB描述There are n events in the parade. Each one can be performed for at most k times.The parade will last for m minutes. The major will give a talk at t

2016-04-05 22:28:48 388

原创 hiho一下 第九十周 Swimming Plans

时间限制:10000ms单点时限:1000ms内存限制:256MB描述Steven loves swimming! The swimming pool he goes to every afternoon consists of N parallel lanes which are number from 0 to N-1. Steven plans to swim

2016-04-03 22:39:28 436

空空如也

空空如也

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

TA关注的人

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