其他
文章平均质量分 66
liverpippta
这个作者很懒,什么都没留下…
展开
-
第一篇博文:hdu1010,奇偶剪枝
拿到这道题,觉得很有把握,长宽比例最大7*7,于是果断暴力搜索,结果杯具的TL了,后来加了一个小优化,就是当前节点到目标节点的最短距离比剩余时间多时,不再继续搜索。但发现仍然不行。。。。。看看了资料,发现这道题要用一个新的知识。叫奇偶剪枝 神马是奇偶剪枝,以一个4*4的图举例,先按照这样去标记 0 1 0 1 1 0 1 0 0 1 0 1 1 0 1 0 从‘0’到‘0’,或从‘1’原创 2012-02-19 19:47:05 · 563 阅读 · 0 评论 -
codeoforces 206 (div1 A)
A 半天没思路,弱死。。。后来做标记,发现标记序列必须是LLLLLRRRRR格式,第i个字母代表机器人拿第i个物品用哪只手,无论怎样,序列必须是左边若干个L和右边若干个R组成,且不可能是LLLRR..RRRLLL..LL,代码省略了 C 不会。。刚开始转换都没有想到 。。。。T T 题目转换一下,任意a[i] % d 容易看出,dmax 若m 则 a[i] % m原创 2013-11-01 15:23:21 · 997 阅读 · 0 评论 -
长沙网络赛G,H,J
ICPC网络赛部分题解原创 2013-09-26 11:16:02 · 1500 阅读 · 0 评论 -
HDOJ-WARMUP2 部分题解(不断更新)
1001:水题 1005:计算几何 这是本人第一次写计算几何题,我还是觉得模板要用自己写的,否则真是各种不舒服。。 首先考虑三点共线的情况,若第4个点在这个线段上,则为Danger,否则safe 三点不共线的时候,果断想外接圆,但byijie跟我说不对,因为钝角三角形时,面积最小的圆应该是以长边为直径的圆,这样的话,枚举四个圆即可,一个外接圆,三个以三条边为直径的圆。比赛的时候当然没写完,原创 2013-09-12 19:27:38 · 872 阅读 · 0 评论 -
hdu 4294 还是搜索+数学
嗯,做了一道和上一题类似的题,卡时真心坑爹啊。。。 有一个地方没有搞懂,就是为什吗长度是2 a,aa,aaa,aaaa.....aaaaaa..aaaa 这样的数每生成一个,对n取模得到一个数b,记录数组b[i],当i=n+1时,根据鸽巢原理,必有i,j使得b[i]=b[j] 把a[i]和a[j]相减,得到aaaaa...00000 肯定存在n的倍数只有2个数字 接下来枚举就是了 用p原创 2013-08-08 20:35:11 · 843 阅读 · 0 评论 -
2013多校联合1部分题解(更新中)
今天先水两发 hdu 4602 这道题仅从表面上看没啥头绪,后来仔细分析2^(n-1)的原因,就明白了,那么2^(n-1)个方法是怎样来的,首先对于n=k来讲,可以由任意n=k-1组成的序列前面+1,由任意n=k-2组成的序列前面+2。。。以此类推,方法估计2^(n-2)+2^(n-3)+..+1 + 1 =2^(n-1),这样也就知道f(n,k)怎样处理了。假设k=1时,f(n,k)=g(n原创 2013-07-25 14:49:31 · 1217 阅读 · 0 评论 -
hdu 4121 模拟
这题有点坑而已。。。但不算很坑。。。 先吐槽些省赛的事,只能用蒟蒻来形容,代码能力渣,尤其是模拟题上手是没有自信。。。平时题目刷的也不够,方向还特别的窄,╮(╯▽╰)╭ 回来后被严重B视了。。好在有些人还是比较理解咱这个马上要考TG的狗。。。 好,回到正式正题,这道题题意简单,就是判断当前的黑方是不是彻底OVER了。。。象棋规则省略。这种在坐标上的模拟题,首先要看看他的X,Y代表什么,而棋盘原创 2013-05-27 15:52:32 · 1111 阅读 · 0 评论 -
codeforces 171 div2 C&E
C 细节略讨厌,我的作法是先去重,把等高点都当做一个点来处理,然后用a[i]纪录从1到i右多少个极小值点,若a[j-1]-a[i]=0,则区间(i,j)是满足题意的,由于之前去重,所以要用到哈希函数。这题比赛时没做出来只能说明太弱了~附代码: #include #include #define N 100004 #define ss(a) scanf("%d",&a) using na原创 2013-03-20 13:24:57 · 755 阅读 · 0 评论 -
POJ数学强化
ACM之数学题强化 pku 2407 relatives 基础欧拉回路 pku 2480 Longge's problem F(N)=∑pi*φ(N/pi),pi|N pku 3090 Visible Lattice Points O(n^2)打表过的,不知有什么更好的方法没 pku 2478 Farey Sequenc转载 2013-02-09 12:21:43 · 641 阅读 · 0 评论 -
CF 109D 模拟
题目不要求k最小,所以定住一个lucky number,反复用它进行交换。最后的结果必须是不降序,所以先确定每个位置上最终的数,若当前此位不是最终结果,就进行交换。例如第i位,若第i位上的数不满足最终结果,就用它与lucky number交换,再用lucky number和最终应该在第i位上的数交换,一共两次。这样最多交换(n-1)回合,正好满足题意交换次数 #include #includ原创 2012-12-03 21:36:00 · 718 阅读 · 1 评论 -
坑爹的模拟题,CF109b div2
不想说了,搞了太长时间才搞出来,哎。。。。最烦的就是这种区间模拟题,各种坑。。。。无语 #include #include #include #include #include #include #define N 100005 #define MAX 1000000001 #define pb push_back #define LL __int64 #d原创 2012-11-27 16:51:07 · 621 阅读 · 0 评论 -
acm第一赛季总结
天津站过去了一星期,酱油了一个铜牌,第一赛季就这样了,还算不错。。。。 zhr说:大一是初步阶段,关键在大二。。。。是呀,这一年真的很关键很关键。。。 大一这一年,首先是从菜鸟级的oier到入门级acmer的角色转变,这个角色转变,还是灰常迷茫的。。尽管本人在oi中没打过铁,拿过一些小荣誉,可是和博大精深的ACM竞赛相比,就显得极其微不足道,想当年oi,自己可是连poj都不带刷的。。。更甭说神原创 2012-10-30 15:05:08 · 787 阅读 · 0 评论 -
hdu 4393 贪心+模拟
今天真的弱爆了。。。。这么水的问题都不会,后来看了看解题报告,才搞明白。。。。 其实就是一个简单的追逐问题,由于0 #include using namespace std; struct node { int f; int s; int id; }; const int N=50010; #define in(a) scanf("%原创 2012-09-15 19:09:16 · 971 阅读 · 0 评论 -
hdu 4006 优先队列
优先队列的原理就是堆操作,这就是容器最强大的地方,省的我们写堆的模板了。。。。。。这道题要找底k大的数,做法就是维护一个容量为k的优先队列,小数不会影响结果果断不要。。。所以也就是求队列中最小的数,由于优先队列的优先次序是从大到小,所以这题要有一个调整,priority_queue,greater >就是从小到大的优先队列。。。。#include #include #include原创 2012-09-13 19:11:20 · 557 阅读 · 0 评论 -
hdu4022 离散化
去年上海赛区网络赛的一道水题。。。可还是刚开始被我搞的烂七八糟,无奈之下,看了别人的博客,才恍然大悟。。的确,在这种题面前真心弱爆了。。。。这道题一看就是要离散化,然后紧跟着就是排序,分别对x,y排序。我之所以搞乱了,就是在离散化的时候没有记录原值id。。。之所以要这个原值id,就是在要通过离散化的数据找到图上的点,从而完成标记和统计。。。。也就是离散后在归整,附代码: #include原创 2012-09-13 19:25:24 · 1020 阅读 · 0 评论 -
多校联合2-1002 贪心
这道题表面上很简单,但并非非常水,还是要经过一些思考的。。。这道题意思很简单,不说了。拿到这道题后,目测可能跟贪心有关,果断就要排序。把x,y分开处理,这样才能下手。首先是对x进行排序,计算每个点在x坐标中,其他点到该店的距离之和,记作dx(i)。怎么计算,排序后用sum数组计算前i个坐标的x坐标和,然后在借助它在计算dx(i)。x方向处理完,在按照这样处理y方向,最终结果=min{dx(i)+d原创 2012-08-13 22:01:51 · 700 阅读 · 0 评论 -
hdu1050基础贪心
hdu1050是一道基础的贪心问题,实质就是区间覆盖,之前竟然没有想到这个,看来OI确实学的不够系统。所求时间T就等于某房间被路过的值,而该房间被路过的次数是所有房间中最多的。由于每个区间包括两个房间,要做一下小小的处理,从2K房间开始搬,其实占用了2K-1房间。同样,搬到2K-1房间,还占用了2K房间。另外,保证初始房间原创 2012-02-21 13:32:58 · 643 阅读 · 0 评论 -
ZOJ 2012 2月 月赛部分题解
临比赛前最后一篇博文.....T T......鸭梨山大的啊 C 训练赛的时候搞麻烦了,其实根本用不着数据结构。。。。省略代码 D 三点不共线降低了难度,根据基础的数学知识,如果画一条新的线段,与之前m条线段在区间内相交,则新生成m+1个part O(n*n)超时,第一个反应就是看看排序,按照线段的起点坐标排序,发现之后是逆序数。。。附代码#include #include #inclu原创 2013-11-15 00:13:06 · 1136 阅读 · 0 评论