
!@#$%^&*()
文章平均质量分 64
nlj1999
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
2208: [Jsoi2010]连通数
不会bitset,TAT(这都不会?数据结构白学了?),于是只好暴力水过了,水了12000多MS。。。。。。。。。醉了 先留个坑,以后补上,目测是tarjan+topo+bitset #include #include #include using namespace std; const int N=2000+5; struct Edge{int to,next;}e[N*N]; int h原创 2015-12-14 15:07:49 · 627 阅读 · 0 评论 -
ural 1144. The Emperor's Riddle
06年的论文题 玄学!!!! 玄学!!!! 玄学!!!! 重要的事情重复O(玄学)遍 写完这题我整个人都不好了 一开始由于很无脑地用vector,结果死活卡在第7个点,无限TLE。 没办法看了下别人的,卧槽贪心+玄学?果然纯玄学过不去啊 于是改了一下,顺便优化了下常数就过了。 再也不写玄学题了QAQ #include #include #include #include #in原创 2016-03-10 20:52:18 · 400 阅读 · 0 评论 -
BZOJ 1197: [HNOI2006]花仙子的魔法
这是啥题?数学归纳法??????? !@#¥%……&*() 首先初步分析得出问题是要求m个n维球面将n维空间分为多少份。 很明显1维的答案是2*m 现在我们假设已知n-1维的所有答案,要求第n维m个点能分多少。 然后通过(脑补/找规律/乱搞)得出f[n][m]=f[n][m-1]+f[n-1][m-1]。 嗯大概就是这样 其实用归纳的思想,第m个n维球与前m-1个n维球有f[n-1]原创 2016-03-22 21:12:57 · 508 阅读 · 0 评论 -
POJ 3133 Manhattan Wiring
辣鸡题目,毁我青春,费我时间,害我性命。 白书上的题目,轮廓线状压DP真是无爱了。 思考半小时,代码两小时TAT,我又回忆起了NOIP上写的那个脑残状压DP了,坑爹的优化。。。。。。 不过好歹1A了是不是。 这波不亏 手算一下有11种转移。 都列出来然后就是码码码了。 MD有个转移算错了查了半小时,还顺便学了下GDB #include #include #include using原创 2016-02-27 12:00:27 · 668 阅读 · 0 评论 -
BZOJ 2336: [HNOI2011]任务调度
随机化乱搞调整 先暴力枚举3的情况,然后贪心出一组1,2的顺序 随机调整顺序,模拟看是否更优,更优则变更为该顺序 #include #include #include #include #include using namespace std; const int inf=1e9; const int N=20+5; int s1[N],tp1,s2[N],tp2; int a[N],b[N原创 2016-04-06 10:58:12 · 837 阅读 · 0 评论 -
HDU 1519 Think Positive
依稀觉得以前做过这样的题(然而并不知道怎么做 只会用单调队列乱搞) 今天才发现原来可以用数学归纳法直接秒掉。 09-《数学归纳法与解题之道 》 #include #include #include using namespace std; int main(){ //freopen("a.in","r",stdin); int T;scanf("%d",&T); while(T-原创 2016-03-25 15:42:50 · 487 阅读 · 0 评论 -
BZOJ 1201: [HNOI2005]数三角形
一个三角形由三条边组成…… 于是我们可以枚举三角形的底边,然后检查剩余两条边存不存在。 用数组预处理出左斜线和右斜线的线段数的前缀和。 就可以在O(1)的时间内检查一条斜线段是不是实线。 时间复杂度O(N^3)(会炸) 虽然名义上有N^3级别的三角形,但是由于(我们常数小)实际上算一下会发现少很多。 所以就水过了。 #include #include #include using n原创 2016-03-27 16:26:55 · 828 阅读 · 0 评论 -
BZOJ 3574: [Hnoi2014]抄卡组
由于无耻老贼ydc把数据出错了 然后我发现我不会读回车了 (md谁能告诉我回车到底是10还是13) 瞎JBcheat过去了 #include #include #include #include #include #include using namespace std; typedef unsigned long long ll; const int base=233; bool fla原创 2016-04-11 16:44:49 · 1186 阅读 · 0 评论 -
好久没发blog了,好颓啊
假装自己AK了 23333333 估计一觉醒来就全挂了原创 2016-06-02 02:26:46 · 875 阅读 · 0 评论 -
COGS 1580 WC2005 友好的生物
陈启峰神犇太神辣%%%%%%%%%%%%%% 题解我都看不懂 照着乱做的。。。。。。 #include #include #include #include using namespace std; const int N=100000+5; const int inf=1e9; int A[N][5],F[N][32],best[N][32],bin[10],rk[N],k,n,c[5];原创 2016-03-10 11:40:30 · 784 阅读 · 0 评论 -
CODEVS 1954 线段树
jxr你过来我保证不打死你!!! 故事是这样的……今天中午发现jxr早上发了一道题过来…… 嗯,就是这题了。 一看到这题,我就想起了wty大爷的箴言。 论JB(划掉)偏题的危害。 这题简直就是数据结构10合1啊!!! 题目很良心(丧病),给了测试点的编号作为输入。 于是我们可以借鉴TKD的写法,写10个程序。。。。。(其实不到吧) 首先看第一个点,暴力没跑了。 第二个,只有查询?原创 2016-02-24 16:11:19 · 803 阅读 · 1 评论 -
BZOJ 1505: [NOI2004]小H的小屋
05年的论文题 优化很玄学。。。。。。 贡献了俩WA,成功地拉低了这题的AC率(这题AC率好高啊) #include #include #include using namespace std; const double inf=1e9; double k1,k2; double sqr(double x){return x*x;} int a[4]; void calc(int m,int原创 2016-03-09 13:49:45 · 733 阅读 · 0 评论 -
3671: [Noi2014]随机数生成器
其实这题真的很水。。。。。。一眼就能看出来解法。 但是 但是 但是 坑~坑~坑~坑~坑~坑啊。 首先模拟一遍出变换后的排列,时间O(N*M+Q),扫一遍排列,用x[i],y[i]记录排列中值为i的数在棋盘的(x[i],y[i])的位置,然后从1开始枚举,每次判断该数能否放在路径序列里,贪心一遍就可以了。 然而这里有两个坑: ①不能建x,y数组,三个5000*5000的数组就炸内存了,原创 2015-12-17 14:59:40 · 582 阅读 · 0 评论 -
1086: [SCOI2005]王室联邦
一开始做的时候脑残了,以为会出现很多无解的情况,于是加了一堆特判,果断WA。 后来发现,明明只有n 然后发现题意理解错了。。。。 原来多颗子树可以由根连接成省,而根可以在省外。。。。。。。 于是我们有个贪心的方法。 当前节点的子树集的大小一旦大于等于B,直接分成一个省,当然我们还可以证明这个省的城市数 最后还有一些 #include #include #include using n原创 2015-12-23 20:50:38 · 466 阅读 · 0 评论 -
2659: [Beijing wc2012]算不出的算式
人生第一次打表找规律(捂脸逃)。 这个算式好像在单墫的《算两次》里见过,然而证明什么的忘记了。 于是就打表后发现,当且仅当p=q时答案为(p-1)/2*(q+1)/2,其他时候都是(p-1)/2*(q-1)/2. #include using namespace std; long long p,q; int main(){ scanf("%lld%lld",&p,&q); if(p==原创 2015-12-24 12:29:14 · 427 阅读 · 0 评论 -
POJ 2750 Potted Flower
题目大意:给定一长度为n的环形序列求最大连续和,连续和长度不能超过n-1,单点修改。 最大连续和?我会动规/贪心 环形序列?我会乱搞 带修改?我会线段树 限制长度?!@#¥%……&*() 我们先忽略掉环形序列 首先,限制很特殊,是n-1,于是我们可以很简单地求出[1,n-1]和[2,n]的最大连续和,取两者的最大值。(不要问我限制为k的时候怎么做,我不会啊) 然后我们看环形序列,首先原创 2016-02-15 11:37:18 · 317 阅读 · 0 评论 -
BZOJ 1213: [HNOI2004]高精度开根
人生苦短 我用python (话说正解是二分+高精度+FFT?) m=(int)(input()) n=(int)(input()) l=0 r=1 while r**m<=n: l=r r=r*2 while l+1<r: mid=(l+r)//2 if mid**m<=n: l=mid else: r=mid if原创 2016-03-30 16:26:08 · 1418 阅读 · 0 评论 -
ural 1132. Square Root
08年的论文题 入门级玄学题 正解涉及到高深的数学姿势(蒟蒻表示不知道的说) 于是只好用论文里的玄学方法。 因为数据的特殊性,可以在O(玄学)的时间内解出来 #include #include #include using namespace std; struct Query{int a,id,next;}q[100005]; int head[40000],tot; void ins原创 2016-03-18 12:56:43 · 371 阅读 · 0 评论 -
POI 2002 Skiers
05年论文题 话说很久之前做拦截导弹的时候狮看的题解 题解说第二问求最长上升子序列 当时并不明白 就混过去了(当然贪心也可做啊) 今天才知道 原来有个东西叫Dilworth定理 最小分解链数=最长反链长度 然后这道题就可以运用论文中的特别技巧过掉了 然而还有个问题 我不太清楚POI的官网要怎么交题 不过有这个 但是这里也没法交TAT反正我交了之后它一直显示等待编译 然后发原创 2016-03-07 17:12:13 · 599 阅读 · 0 评论 -
POJ 3155 Hard Life
首先很明显是最大密度子图(感觉没学过啊怎么一下子就脑补出来这个名词了) 然后…… 不会 于是去Orz 07 年 胡伯(#)涛的论文,然后就可做了。 结果……精度这东西明显是玄学啊,WA了快10次了 不过看到了Discuss里面wty大爷的小tip,就过了。。。。玄学!玄学! #include #include #include #include #include #include us原创 2016-02-23 15:11:11 · 396 阅读 · 0 评论 -
BZOJ 4563: [Haoi2016]放棋子
考虑经典的二分图做法,然后就变成求二分图完美匹配的个数了 显然不会做QAQ 由于障碍的特殊性,不妨把每个障碍都放到主对角线上,发现对答案没有影响 于是就变成错排计数了 高精度搞一搞就好了 #include #include #include #include #include #include #include #include #include #define rep(i,l,r) f原创 2016-05-22 18:27:20 · 715 阅读 · 0 评论