自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

坚持不懈

骐骥一跃,不能十步。驽马十驾,功在不舍!

  • 博客(29)
  • 资源 (3)
  • 收藏
  • 关注

原创 Nim游戏的一个扩展——51nod 1661 黑板上的游戏+LA 5059 Playing With Stones

前几天做过一道题目,是Nim游戏的一个扩展,也不能说扩展吧,只是说另一种常见的状态。问题引入:给定n堆石子,每堆石子有vi(1思考:当k==2的时候,显然就退化成了la 5059 的题目,我们以此为基础来考虑,肯定要先计算出sg的函数表,然后观察规律,lrj在训练指南中说的很清楚,打表的规则也很简单,下面给出lrj所打出的表: 0 1 0 2 1 3 0 4 2 5 当然

2016-08-30 21:11:44 764

原创 手残&脑残 记录仪

说明:该博文用于记录做题过程中各种脑残/手残的低级问题,如果遇到手残的问题出现超过3次,可自行选择。剁手。。极限数据,例如 0<=n<=10000 在做题过程中很容易漏掉边角数据,所以在编写的时候,务必要考虑有没有处理极大和极小数据。题目没有说明或者读题时没有读清楚 根据常规,要按最坏的那一方面来考虑,当然,这中间有个度,在算法可使用的范围内考虑,不要考虑猜测自己的算法跑不过去的题意,因

2016-08-30 20:07:01 568 1

原创 任重道远——记2016暑假训练

写在前面刚开学这几天比较忙碌,昨天课也比较满,然后又打了cf,所以写总结的事情倒是拖了很久,早些时间是想到周天写的,结果周六周天又扣了两天的51nod,好容易今天空课,刚好对前一段的状态做一个总结。其实这几天虽然总结一直在拖,不过我也在构思怎么去写,该总结哪方面的东西,以至于看起来更清晰一些。正文其实对于集训队里的每个人来讲,整个暑假都是有收获的,不过收获多少每个人都不太一样而已,而相对一个老队员的

2016-08-30 16:32:13 429

原创 20160828_第4周周报

写在前面 这个周算是暑假集训的最后一周了,当然,周报还是要照常出的,不过昨天我看到了一些公司的商业的周报模板,于是就模仿着更改一下以后周报的报告风格,以后周报统统采用以下的格式进行,按照本周学习内容,学习总结,学习规划来划分,这样来少了无用的废话,内容会更加直观和清晰明了。本周学习内容2015年北京赛区的题目,其中A题一道暴力的题目,亲手敲了以下,感觉手感还可以,H一道推理题目,不过还是没有

2016-08-28 13:42:58 534

转载 树链剖分入门讲解

“在一棵树上进行路径的修改、求极值、求和”乍一看只要线段树就能轻松解决,实际上,仅凭线段树是不能搞定它的。我们需要用到一种貌似高级的复杂算法——树链剖分。树链,就是树上的路径。剖分,就是把路径分类为重链和轻链。记siz[v]表示以v为根的子树的节点数,dep[v]表示v的深度(根深度为1),top[v]表示v所在的重链的顶端节点,fa[v]表示v的父亲,son[v]表示与v在同一重链上的v的儿子节

2016-08-26 17:22:13 7560 1

转载 树链剖分详解及模板

这几天学习了一下树链剖分,顺便写一下我的理解、 早上看了一下别人的讲解,云里雾里,终于算是搞懂了、树链剖分是解决在树上进行插点问线,插线问点等一系列树上的问题 假如现在给你一棵树,然后没两条边之间有一条权值,有一些操作,1:x—y之间的最大权值是多少,2:改变x—y之间的权值 当前这样的操作有很多,如果直接用暴力的方法的话肯定不行,那么就要想一个好的方法,我们可以想一下能不能借助线段树解决,能

2016-08-26 16:07:58 682

原创 hihoCoder 1227 & 2015 北京网络赛 A题

题意:给定m个点,然后从这m个点里找到一个点作为圆心,求一个最小的半径使得圆内刚好有n个点,没有压线的点。思路:预处理一下各点间的距离,暴力枚举圆心,然后找到排序后的第n个判断即可。坑点:mcode:#include <iostream>#include <cstdio>#include <algorithm>#include <vector>#include <cmath>using n

2016-08-23 13:06:26 437

原创 20160821_第三周周报

写在前面心情大概是无比糟糕的,生活上的一些事情是使最近的心情变得很糟糕,昨天打了场cf,昨天21点开始的,因为宿舍要锁门,所以不得不打半个小时然后赶紧回宿舍,打的时候,不断手残,连一个简单的问题,要wa了两遍才能过去,虽然最后凭借手速拿了3题(半个多小时拿了3题还是比较满意的),但是感觉自己的手的确很糟糕,像是不是自己了的一样,心情郁闷。正文不管我承认还是不承认,自己状态相比去年同时期要滑落一些,不

2016-08-21 19:11:11 458

原创 20160818_周报日志之二

写在前面发觉自己真的很欠揍唉,明明上个周立了flag一周要进行一次总结的,结果这个周因为打比赛给忘却了,然后只能今天补了,不要说这个周不干了,下个周重新开始,这是个态度问题,这个周拖延的人难道下个周能够按时完成吗?正文88到814算是比较颓的一周,这一周对网络赛的准备毫无准备而言,想平常一样,只不过到中午的时候可能没那么容易犯困了,然而这一切都为失败埋下了伏笔(其实实力不行才是最致命的原因,但是又往

2016-08-18 16:58:07 326

原创 LA 3458——Bridge

题意:建设一座大桥,在桥上建若干个塔,塔高为H,相邻两塔间的距离不能超过D,桥长度为B,线的总长度为L,桥之间的绳索为对称抛物线,问建最少塔的时候的线索的最下端的离地高度y思路:仔细分析一下,不难发现,只要求得抛物线在y轴的长度h,那么所求即为H-h,而求解这一段实际上是求解一个函数f(D1,L1)=h的方程,其中D1为两个塔间的间距,L1为该抛物线的曲线长度,这两个量极易容易求出,而这又是一个关于

2016-08-15 20:56:39 368

原创 HDU 5842—— Lweb and String & CCPC 网络赛 1011

题意:按字母出现的顺序编号,问最长上升子序列。思路:最长为26,出现一个新的字母就加上,答案为字母的种数,无聊的题目。code:#include #include #include #include using namespace std;const int N=1e5+5;string s;int st[28];int main(){ i

2016-08-15 20:38:51 294

原创 HDU 5832——A water problem & 2016CCPC网络赛1001

题意:给定一个数,问该数是否能够对10001取摸,能够就YES,否则为NO。思路:和题目样,水题,直接取摸即可。code:#include <bits/stdc++.h>using namespace std;char s[10000001];const int mod=10001;int main(){ int ca=1; while (~scanf("%s",s)){

2016-08-15 19:40:44 567

原创 2016CCPC网络赛赛后总结——回顾与反思

今天的比赛是特别遗憾的一场,如果能多出一题,或许是一个相反的场面,但是,实力就到这里了,瓶颈了,再假设如果毫无意义,一切都是我们平时不严格的训练和懈怠自己造成的,或许说起来难听,我们一点也不遗憾,是“罪有应得”,那些平时犯得“罪”,终于在今天判了刑。在比赛前几天,我几乎每天都会做噩梦,做的梦也奇奇怪怪,梦到瘟疫,梦到被蛇咬的伤口,梦到了天灾,我知道,这是我对现实中的挑战没有底气,不知道比赛将导向什

2016-08-15 19:30:25 5338 1

原创 UVA 12298——Super Poker II

题意:给定一些扑克牌,问这些扑克牌选四色能组成n的方案数,其中遗失了c张牌,这c张不能用,问n从a到b的方案数。思路:分析每一种花色,那么每种花色组成的方案数即为x^1+x^2+x^3+x^5(改花色的牌只有1,2,3,5这四张的时候),那么对比于其他的花色,也是一样,四个花色的方案数相乘,即为所得值,那么很容易来使用FFT,注意可能会超精度,复数要用long double。code:#includ

2016-08-11 16:45:30 820

转载 经典算法研究系列:十、从头到尾彻底理解傅里叶变换算法、下

经典算法研究系列:十、从头到尾彻底理解傅里叶变换算法、下作者:July、dznlong   二零一一年二月二十二日推荐阅读:The Scientist and Engineer's Guide to Digital Signal Processing,By Steven W. Smith, Ph.D。此书地址:http://www.dspguide.com/pdfbook.ht

2016-08-11 10:32:42 2143

转载 经典算法研究系列:十、从头到尾彻底理解傅里叶变换算法、上

经典算法研究系列:十、从头到尾彻底理解傅里叶变换算法、上作者:July、dznlong   二零一一年二月二十日推荐阅读:The Scientist and Engineer's Guide to Digital Signal Processing,By Steven W. Smith, Ph.D。此书地址:http://www.dspguide.com/pdfbook.htm

2016-08-11 10:31:27 6142

原创 HDU 5730——Shell Necklace

题意:一段长为i的项链有a[i]中装饰方法,问长度为n的项链有多少种装饰方式。思路:容易推出,dp[i]=∑dp[j]*a[i-j],(1<=j<=i-1)那么这样就刚好符合卷积的运算,这样就可以愉快地使用fft了,不过数量级在1e5,所以应该采用分治来处理,算法复杂度nlognlogn。code:#include <iostream>#include <cstdio>#include <cst

2016-08-10 21:14:25 1136

原创 HDU 4609——3-idiots

题意:给定n个数,随机从这n个数中取3个数,问能组成三角形的概率是多少?思路:首先把统计这n个数出现的个数,那么会得到一个向量,这个向量的自我的乘积就是a[i]+a[j]的可能的方案数,这样,我么就很方便求出了两条边的和的方案数。但是在加的过程中,我么多加了a[i]+a[i]的情况,也就是自己跟自己相加的情况,所以我们要减去这一段。而且,在加的过程a[i]+a[j]和a[j]+a[i]是同一种情况,

2016-08-09 16:33:39 282

原创 HDU 1402——A * B Problem Plus

题意:给定a,b,求a*b。思路:a,b的长度都为50000,直接模拟计算n*m肯定超时,可以用快速傅里叶变化计算,然后再把相应的系数化简出来。code:#include <iostream>#include <cstdio>#include <cstring>#include <cmath>using namespace std;const double PI=acos(-1.0);st

2016-08-09 15:20:07 897

原创 BestCoder Round #86 1003 &HDU 5806——NanoApe Loves Sequence Ⅱ

题意:给定一个序列,问在这个序列里有多少区间第k的的数>=m思路:在比赛的时候是多想了,开始像区间第k大的问题,赛后想想实在是偏了。正确的解法是枚举起点然后用尺取法维护一段区间,直到找到k个数>=m的最短终点r,ans便是后边这一小段即n-r+1。code:#include <iostream>#include <cstdio>#include <cmath>#include <algorit

2016-08-07 20:54:27 295 3

原创 BestCoder Round #86 1002 &HDU 5805 ——NanoApe Loves Sequence

题意给定一个数列,随机从该数列里删除一个数,求该数列的的相邻之间的绝对值的最大值的和。思路两个数列来分别维护i位前面的相邻的绝对值的最大以及i后面的最大,枚举每一个可能删除的数,然后分别从左右和要删除的这个空档里娶一个最大的值。code:#include <iostream>#include <cstdio>#include <cmath>#include <algorithm>#inclu

2016-08-07 20:36:06 342 3

原创 hdu 5783——Divide the Sequence

题意及思路:求一个序列的分段个数,使得每一段的前缀和为0,如果正向思维,那么解法是从前往后遍历,每遇到一个负数就向前遍历直到>=0(这样贪心保证了序列尽可能多),但是这样最坏的情况是n^2的,所以要逆过来来考虑,每遇到负数就向前加到>=0即可,然后边统计答案,在n的算法里计算出。(注意:前缀和可能超int,用long long 保存)code:#include <bits/stdc++.h>usi

2016-08-07 20:09:53 307 4

原创 20160807_第一周周报

写在前面以后每周周日要进行一次周报,内容长短不限,为这一周的知识点和心态方面的总结,还有就是对未来的相关规划和调节!知识点方面 在知识点方面进度不是太大,打的还是一般化的套路,在这个周的前几天的时间里,看了一部分图论的知识点,其实说来有点遗憾,到了现在的地步,图论的知识点我却还只停留在简单层面,我尝试过突破和改变,但是更多的是,浮躁的心态以及动不动就要放弃的想法,我觉得从某些方面上来讲,这是件

2016-08-07 19:33:09 854 8

原创 hdu 5802——Windows 10

题意:给定两个音量,需要从l调到r,每次只能向上一下或者向下(1,2,4,2^n)下(连续向下的情况下),每次可以停歇或向上来打断向下的连续性,最少需要多少步?思路:当l小于r时显然答案是r-l,当l>r时那么不停地下降到r附近,此时只需要在r的上方和下方挑选最少的步数即可。注意向上也可以打断向下的连续性。code:#include <iostream>#include <cstdio>#inc

2016-08-06 12:19:06 407

原创 hdu5446——Unknown Treasure

题意:给定n和m,求c(n,m)%(∏ p)的值,相当于lucas定理的一个推广,在p不是素数的情况下的一个解决方法。思路: 首先对于c(n,m)%p[i]来讲,是一个lucas的裸题,那么对于c(n,m)%(∏ p)划分成lucas子问题求解后就变成了M%p[i]==a[i]的问题,这个问题就是裸的中国剩余定理了。code: #include <iostream> #include

2016-08-06 10:34:08 365

原创 hdu 4349——Xiao Ming's Hope

题意:给定n,让求c(n,0),c(n,1)……c(n,n)中有多少奇数。思路:本题为Lucas定理推导题,我们分析一下 C(n,m)%2,那么由lucas定理,我们可以写成二进制的形式观察,比如 n=1001101,m是从000000到1001101的枚举,我们知道在该定理中C(0,1)=0,因此如果n=1001101的0对应位置的m二进制位为1那么C(n,m) % 2==0,因此m对应n为0

2016-08-06 08:13:33 353

原创 CCPC网络赛前一周的充电计划

CCPC大概还有一周左右的时间,在这一周内,要补充一些数学内容,避免出现像去年学长们一样出现的情况,不能出现在碰到相关题目的时候面面相嘘不知所以然。所以这几天的计划大体是: 1. Lucas定理 : 题库 2. 中国剩余定理 3. 快速傅里叶变换 4. 母函数 5. 高斯消元 6. 区间gcd及lcm的维护 7. polya计数 8. 矩阵乘法(总结和复习)

2016-08-05 21:22:27 974

转载 Lucas定理及组合数取模

首先给出这个Lucas定理:A、B是非负整数,p是质数。AB写成p进制:A=a[n]a[n-1]...a[0],B=b[n]b[n-1]...b[0]。则组合数C(A,B)与C(a[n],b[n])*C(a[n-1],b[n-1])*...*C(a[0],b[0])  modp同余即:Lucas(n,m,p)=c(n%p,m%p)*Lucas(n/p,m/p,p) 

2016-08-05 20:14:39 665

转载 Java在ACM中的应用

Chapter I. Java的优缺点各种书上都有,这里只说说用Java做ACM-ICPC的特点: (1) 最明显的好处是,学会Java,可以参加Java Challenge   :) (2) 对于熟悉C/C++的程序员来说,Java 并不难学,找本书,一两周业余时间就可以搞定了。当然,这里只是指一般编程,想熟悉所有的Java库还是需要些时间的。 

2016-08-03 19:45:15 323

ThinkPHP3.2.1完全开发手册CHM[2014-02-14]

2017-04-20

ACM数论 课件

2017-04-06

windlx计算机体系结构模拟器

计算机体系结构模拟器,windlx

2017-04-06

空空如也

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

TA关注的人

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