自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 资源 (1)
  • 收藏
  • 关注

原创 HDU 4620 Fruit Ninja Extreme (简单搜索带剪枝)

题意:T组样例,每组样例给出 N M W 代表可供选择的切法数,水果数及触发连击的最大间隔时间。对于N种切法给出每种切法切的水果个数 C ,切的时间 T,C个水果分别是谁。思路:注意到数据量直接搜索,但需要剪枝。我们注意到按切法按时间排序后,我们可以将可连击的一些切法分成一块。对每块我们可以预测,接下来的搜索的答案是否会比当前答案大。由此剪枝。代码:#include us

2017-05-25 07:42:21 326

转载 Sqrt的多种实现方法

Sqrt的多种实现方法

2017-05-16 15:36:58 458

转载 n节点组成二叉树的个数

转自:n节点组成二叉树的个数可以分析,当n=1时,只有1个根节点,则只能组成1种形态的二叉树,令n个节点可组成的二叉树数量表示为h(n),则h(1)=1; h(0)=0;        当n=2时,1个根节点固定,还有2-1个节点。这一个节点可以分成(1,0),(0,1)两组。即左边放1个,右边放0个;或者左边放0个,右边放1个。即:h(2)=h(0

2017-05-16 12:59:38 2447

原创 17 东北赛总结

其实没什么好说的,三个模板题,一个3A,剩下两个连看都没看。杭州一个铜牌队这次是前三。当时我们是160,这次成绩在前面。说明一件事:https://www.zhihu.com/question/59782275?utm_source=qq&utm_medium=social 还是太菜了。

2017-05-16 00:32:54 302

原创 2017 东北四省赛热身赛 C

原题:清华大学出题(侵删)题意:模拟俄罗斯方块游戏给出 N 个方块,限高为 M对于 N 个方块给出 方块的类型 ,方块的方向,方块的最左端的列数。问 N 个方块径直下落后,共可以消除几层?游戏过程中保证不超出限高。思路:模拟代码:可能会TLE#include using namespace std;char kuai;int n,m,f

2017-05-13 22:19:07 815 1

原创 2017 黑龙江省赛热身赛 C - World Cup

题意:         思路:        本来是道很简单的题,现场思考的很复杂,这搜那搜的,归并树模拟一下就行。代码:不知道 AC 不 AC 我没有数据......... #include using namespace std;#define ls l,mid,rt*2#define rs mid+1,r,rt*2+1#define sf l,r,rt#de

2017-05-11 20:56:06 453

原创 Gym - 101341D Jumps

题意:         给出 N 个数,终点 M。 问从 0 开始每次移动 N 个数中的一个距离,是否能达到 M。思路:         显然求这些数的 GCD 即可。代码:#include using namespace std;long long gcd(long long x,long long y){ return y==0?x:gcd(y,x%y);}

2017-05-08 22:20:47 557

原创 Gym - 101341C Urn with Balls

题意:          给出 N 个 红球 M 个蓝球,K个未知颜色(任何颜色)的球。问最多取出几个球才能使取出的球中红球数量不超过 Q ,蓝球数量不超过 P。思路:         假设 K 个球都是红球或蓝球即可。代码:#include #include #include #include using namespace std;const int INF=0

2017-05-08 22:16:47 614

原创 Gym - 101341B Pursuing the Happiness

题意:         交换串中的两个位置能否使得串中不含有 “happiness”。思路:         分情况判断即可         值得注意的是,若串中原不含模式串时,我们的随意交换可能反而会形成模式串。         那么原串中若有相同字符,互换即可。若没有,交换头两个字符即可保证不会形成模式串。代码:#include using namespace s

2017-05-08 18:15:16 518

原创 Gym - 101341I Matrix God

题意:          给出 n * n 的 A , B ,C 三个矩阵,问 A * B 是否等于 C 思路:         n 太大,不能暴力。O(n^3)         我们可以将矩阵变化压缩一下。转化为O(n^2)。代码:#include #include #include #include #include using namespace std

2017-05-08 18:09:59 527

原创 Gym-101341E Bonuses and Teleports

题意:          给出 N 个跳点和 M 个目标点,跳点之间可任意传送,问从第一跳点开始,走遍所有目标点并返回第一跳点的最小 cost 是多少?思路:          见代码代码:#include using namespace std;const int N=2e5+5,inf=0x7fffffff;long long t[N],b[N],c[N],d[N];

2017-05-08 18:05:18 931

原创 HDU 6030 Happy Necklace

题意:         请你构造长度为 N 的 01 串,使得串中所有素数长度的子串中 0 的数量不少于 1 的数量。思路:         看到数据量就明白了这一类题的做法         1.打表         2.根据打表结果,写出递推方程。         3.将递推方程构造为矩阵。         4.快速幂求解。代码:#include #incl

2017-05-08 16:58:48 851

原创 HDU 6029 Graph Theory

题意:         对于一个长度为 N 的点列(1,2,.......,n)从点 2 开始有各有一次操作:         1操作,将当前节点和其前面的所有节点相连。         2操作,不和前面的节点相连。         问在最终构成的图中,能否从中选取几条边,每条边都没有公共端点,而且n个点都被边覆盖。思路:         贪心求解。代码:#incl

2017-05-08 16:53:42 409

原创 HDU 6027 Easy Summation

题意:          给出 N 和 K,问( 1^k + 2 ^k + ......... + N^k )Mod 1e9+7 的值。思路:          N 小于 1e5,k小于6,暴力即可。          若 N 的范围较大,好像可以推出公式求解。代码:#include using namespace std;const int MOD=1e9+7;c

2017-05-08 16:44:34 710

原创 HDU 6025 Coprime Sequence

题意:        T组样例,给出 N 个数,求去掉一个数后,数列的最大 GCD。思路:        维护前缀 GCD 和 后缀GCD 即可。        代码里使用了线段树,其实完全没有必要。代码:#include using namespace std;#define ls l,mid,rt*2#define rs mid+1,r,rt*2+1#defi

2017-05-08 16:39:01 549

原创 HDU 6024 Building Shops

题意:                    有 N 个教学楼,在每个教学楼里学习的学生只会到其左边第一个有小卖铺的教学楼买东西,两个教学楼之间的花费为其距离之差。          由以上规则第一个教学楼的小卖铺是必须建设的。          现给出在每个教学楼建小卖铺的话费,问如何建设小卖铺才能使总体花费最小,输出最小花费。思路:          DP,见代码代码:

2017-05-08 16:33:51 729

原创 HDU 6023 Automatic Judge

题意:          模拟 Online Judge cost 计算。          T 组数据,每组 N 道题 M 次提交记录,问最终 AC 几道题以及 cost思路:           map 判重复 AC,模拟即可。代码:#include using namespace std;map vis;int main(){ int T; s

2017-05-08 16:25:09 298

原创 Codeforces 805D Minimum number of steps

题意:          给出一个只含 a b 字符的串,问不断将串中的 “ab” 字串替换为 “bba” 至少需要几次可以结束替换,结果对 1e9 + 7 取余。思路:          首先,替换的顺序并不影响最终替换的次数。          我们从空串开始模拟添加,可以发现规律,每加入一个 ‘b’ ,设 ‘b’ 之前 ‘a’ 的个数为 x ,替换次数就加上 2^x -1。

2017-05-05 10:49:51 577

原创 Codeforces 805C Find Amir

题意:         给出一个 N 个节点的图,节点 i 到节点 j 的花费为 ( i + j ) MOD ( N + 1 ),问遍历所有节点的最小花费。思路:         举例观察         若 N == 10         那么 1 10 路径                  2  9  路径                  3  8  路径

2017-05-05 10:39:19 365

原创 Codeforces 805B 3-palindrome

题意:         用 a b c 三个字符构造一个长度为 N 的串,保证串中不出现长度大于等于 3 的回文串 并且 尽可能使字符 c 出现的次数最少。思路:        串用 aabb 构造即可满足题意        例:长度为 3 的串为 aab                             5              aabba

2017-05-05 10:32:07 342

原创 Codeforces 805A Fake NP

题意:           给出两个大于2的数,求两数之间所有数中出现次数最多的因子。思路:          观察可知,除 A==B 时,答案为 A或B 本身,出现次数最多的因子为 2 。代码:#include using namespace std;int main(){ int a,b; scanf("%d%d",&a,&b); if(a!

2017-05-05 10:27:56 477

原创 POJ 2104 (求区间第K大)

题意:         给出 N 个数 , M 次查询。每次查询 L R 区间中第 K 大的数。思路:        离线线段树做法:在线主席树:Splay:  并归树:               由线段树改编               利用STL给出的 merge 每次并归即可 时间 O(nlog

2017-05-04 13:15:12 378

原创 HDU 4452 Running Rabbits (模拟)

题意:         给出 N * N 的格子,两只兔子的起点为 1 ,1 和 N ,N。         现在给这两只兔子一个出发方向,和每秒跳跃格子数和每过t秒方向就向左转这些条件。         如果这只兔子跳到一定的步数碰到了墙壁,那么就回头继续将剩余的步数跳完。如果两只兔子相遇,那么这两只兔子就互换方向,这时候如果正好需要向左转,就不需要向左转。思路:

2017-05-01 15:49:34 324

学生管理系统

系统编的不是很好,别当答案用,纯粘容易错

2016-10-26

空空如也

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

TA关注的人

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