自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Bysen32

当梦想照进现实

  • 博客(245)
  • 收藏
  • 关注

原创 [U]3.2.1 Factorials 有点点意思的水题

以前在XTU的比赛中做过这个题,当时没过,到后面还是用了个猥琐的方法过的。可能是不记得了当时用的高精度法没过,这次看到这题直接采用赤裸裸的高精度,结果... 在本地跑那速度.....= =||||于是乎,还是采用了猥琐的方法;但是为什么每次mod100000呢??而每次mod10000就WA呢?解释:首先我们不能采用赤裸裸的保留末位非零数的方法。原因:进位,使得末位为0;而在一

2012-02-13 21:31:50 568

原创 [U]3.1.4 Shaping Regions 递归,计算几何

一道很有意思的题目。只是今天的课程比较紧张,中午敲了下题,下午上完课后接着敲了下题。改了些bug,终于还是过了。鼓励一下~解题思路:题目大意是矩形覆盖问题,求最终见到的各种颜色矩形的面积。由于矩形比较多1000个而且坐标范围用点阵表示会爆空间。题中给的Hints也是含混不清。在队友提点下,终于到了解决的办法。用递归,因为题中有很明显的子问题性质,当前色块的矩形被上面的矩形覆盖之后可以分割成

2012-02-13 17:56:45 731

原创 [U]3.1.6 Stamps 会错意的DP题

3章第一节有道题敲不出来啊~~~没办法,只能把后面的题先给敲咯~这个题呢...首先本巨菜想了一个很傻很水很烂的DP方程。使得自己的程序果断崩了...开了一个10001*200的二维boolean数组,[面额][张数]这样来DP,因为最大的面额只有10000 ,再通过循环数组的方法,勉强使得空间不爆掉,结果过了9个点,第10个点果断超时。后来牌桌子一想!可以变成一维DP!a[

2012-02-12 16:44:22 546

原创 [U]3.1.5 Contact 小技巧题

刚开始做这题的时候思路错了, 把他想成字符串模式匹配题了。通过构建长度在[A,B]之间的字符串,然后再对主字符串进行模式匹配,想想要用kmp算法,对于这个我还不是很懂.... 打算好好学习一下kmp,后来估计了一下时间,发现必须超时。转而一想:其实需要的只是在主字符串中的一些子集,通过直接遍历主字符串长度为len(A怎么解决呢?可以通过添加前导'1',区别开来。再在输出的时候忽略前

2012-02-12 16:28:48 1083

原创 [U]3.1.2 Score Inflation 赤裸裸的多重背包问题

如题:前段时间看了点背包九讲,没能沉住气看完,后面还是要好好加工一下啊。这种背包水题还是能秒掉的。/*ID:sevenst4LANG:C++PROG:inflate*/#include#define MAXT 10000#define MAXP 10000using namespace std;int dp[MAXT+1];int t[MAXP+1];int f[M

2012-02-12 12:23:09 616

原创 [U]3.1.1 Agri-Net 简单的最小生成树问题Ford

拿以前的代码过来秒掉了,这代码可以作为一块好的模板了......./*ID:sevenst4LANG:C++PROG:agrinet*/#includeusing namespace std;int main(){ freopen( "agrinet.in","r",stdin ); freopen( "agrinet.out","w",stdout ); int

2012-02-12 12:20:33 537

原创 [U]2.4.5 Fractions to Decimals 简单的语言控制题

简单的语言控制,考察代码的熟悉程度。代码比较丑陋,但是能ac....../*ID:sevenst4LANG:C++PROG:fracdec*/#includeusing namespace std;struct node{ int num; int left;}p[100000];bool flag[100001];int main(){

2012-02-12 12:18:36 750

原创 [U]2.4.4 Bessie Come Home 简单最短路问题

很简单的最短路问题,其中的关键就在于有些农场是没有牛的,这些农场可以走,但不能算在最终答案中,毕竟题中需要的是牛的最短路径。将'Z'点作为源点,进行一次赤裸裸的单源点最短路径,就可以得出答案了。代码中我用一个hash函数把所有的字母下标点都规整到[1,52]这个范围内。/*ID:sevenst4LANG:C++PROG:comehome*/#include#define INF

2012-02-12 12:16:02 1057

原创 [U]2.4.3 Cow Tours

总算是做到了一点点的图论题了~ 意味着后面的难题要来了还是觉得自己太懒,不愿去花时间,不愿意相信自己。这个题呢,有点点意思,本来我的代码超时的,随手改了点小东西,没预料到过的竟然过了~ 哇哈哈哈~另类的秒掉了。解题思路很简单,但是求解过程中会绕很多圈子,有点头疼。枚举不在一个联通图中的两个点,做边连接它们,在根据题中的定义,求出农场的直径,再通过寻找农场直径中最大值的最小值。这里佷

2012-02-10 22:56:46 646

原创 [U]Overfencing

简单DP/*ID:sevenst4;LANG:C++PROG:maze1*/#includeusing namespace std;char m[222][88];int hi[101][40];int fx( int x ){ return (x<<1)-1; }int fy( int y ){ return (y<<1)-1; }int min( int a,in

2012-02-10 16:05:51 493

原创 [U]Cow Tours

简单的模拟题,如果是要找周期性的话,真不会啊~..../*ID:sevenst4LANG:C++PROG:ttwo*/#includeusing namespace std;char map[20][20];void rotate( int &x,int &y ){ int tx,ty; tx=x;ty=y; x=ty; y=-tx;}int

2012-02-10 16:04:49 758

原创 [U]Longest Prefix DP

茅厕顿开的一道DP题!那真是!突然知道了想通了!那编出来的速度真是快啊!抓牢DP的特征,构建DP方程~ 嘿嘿~/*ID:sevenst4LANG:C++PROG:prefix*/#include#include#define MAXN 200001using namespace std;int dp[MAXN];char item[201][12];char dat

2012-02-09 20:55:00 466

原创 [U]Cow Pedigrees DP

很明显的DP但是要注意的东西很多。不能盲目初始化,另外看的DP课件说的就是DP的特征,最优子结构,最优局部特性。找到DP的关键就在这里。/*ID:nocowsLANG:C++PROG:nocows*/#include#define MAXN 201#define MAXK 101#define mod 9901using namespace std;int main()

2012-02-09 19:50:37 596

原创 [U]Arithmetic Progressions 枚举

简单的枚举题。题意是在一个集合S中求等差数列,输出等差数列的首项与公差。集合S中的元素是两个非负数的平方和。题目给出等差数列的项数,集合元素的范围。思路:用一个bool数组记录该位置的数是否属于集合S。如果直接枚举公差很容易超时。这里可以减枝,使用一个list数组将bool数组中有效的元素全部保存起来。这样取出首项与公比就更快速了。另外要优化的就是判断最后一项是否在集合S中。/*ID

2012-01-15 21:10:56 552

原创 [U]The Clocks 枚举

很少去自己构建枚举法,一般遇到题就是直接的DFS,BFS显然这样的编码复杂度很高。太久没有做题了连这道水题都用了我一上午,也对自己的思维有帮助吧,简单的事情复杂化了。实在不是我所希望的啊... 调试了N久都没弄出来!好吧说说这题的思路:首先明确的一点就是这题不需要用到DFS,用DFS和BFS的话就要用位操作压缩状态,一位位操作还是很方便的,但是两位位操作写起来就不那么好看了。我们知道,对于

2012-01-15 16:05:03 569

原创 [U]Packing Rectangles

很久没有做题了,详细统计呢有两个月了。浪费了两个月做了一些无关痛痒的事情。在这里对我的队友说声对不起了...接下来好好做题吧..尽量多做点多感悟一点。分析:这题在题目里面说得很清楚了,有6种情况,其实这六种情况只是4个矩形的不同摆法。和他的长宽怎么摆是没有关系的。其中1-5的情况是固定的,因为这几种情况比较简单,每个矩形各自的长宽对集合出的大矩形的长宽影响不大。下面重点分析的就是第六种

2012-01-13 18:19:06 782

原创 感叹一下

习惯了安静~ 听着钢琴曲做我的作业。没碰acm大概有一个月了。四级也终于考完了。现在手头的任务很多,这几天的任务很多吧。今晚熬夜做JSP。做完后开始linux的备考,还有TCP的代码要写!加油!弄完这些就开始我最爱的acm吧!

2011-12-17 23:04:15 629

原创 POJ 3544 贪心

这题周末的时候去被虐的时候做过但是那时的题目描述和现在不同;那题是说把猪送城市,输出按猪的顺序到城市的映射,而POJ的题目却是按城市的顺序输出猪。明显的,我们可以得到单位的重量的猪送到每个城市挣的钱,这样有个排序。将猪的重量排序这样又有一个排序。于是乎... 重的猪挣大钱,轻的猪挣小钱。按照桶排序一一映射。再顺序输出就OK了~#include#include#include

2011-11-08 20:53:58 798

原创 POJ 2449 A* K短路

很久以前便想做做K短路了。只是无奈鄙人这苦逼的小菜啊~。首先讲讲A*算法吧。众所周知,A*算法就是启发式搜索,基本形式就是这样:f(x)=g(x)+h(x);其中f(x)代表在x点所需要的总代价,而g(x)代表:从源点到x点已经耗费的实际代价,h(x)代表从x到终点需要的估计代价,这个函数是一个估计值.而从x到终点真正需要的代价为h*(x),在整个启发式搜索中我们必须保证h(x)这样我们可

2011-11-08 18:52:26 786

原创 1.6.7 Check the Check

恶心OJ恶心题! 模拟法太恶心了!!#include#include#includeusing namespace std;int chess[100][100];bool cross1( int x,int y,char aim ){ if( chess[x][y]==aim ) return true; if( chess[x][y]!

2011-11-03 14:49:59 507

原创 1.6.2 Minesweeper

UVA是世界上最恶心的OJ!!!题目中说的每个图之间应该有一个空行.... 就是前面没有后面也没有!! 好恶心!!

2011-11-02 21:40:26 564

原创 1.6.1 3n+1问题 UVA100

这题的数据量来看,很明显要用记忆化的思想。记忆化却要注意两点1.不要用数组的下标来作为记忆化的标记,在不知不觉中就爆空间了。2.在自己保证不会爆数据空间的时候却出现了RE,这时候就是数据类型爆掉了。以上就是两种RE的问题!其他的没什么了。只是在编码的时候要考虑更多的东西。就是这样.....

2011-11-02 20:57:18 510 1

原创 AOJ K

K – ZZY 的字典Time Limit: 1000MSDescriptionZZY 的英语一直很悲催..面对厚厚的单词本相当捉急...并且总是将相似的单词给弄混...囧...为了让自己区分好每个单词但又减少记忆量...ZZY 决定采取将每个单词简化到最短长度..简化的单词满足在单词表中能唯一标示这个单词并且其长度最短..若有单词是另一个单词的子集..那么这个单词简化不了

2011-10-29 21:23:37 607

原创 AOJ J

J – 坑爹的叶萝卜Time Limit: 1000MSDescription叶萝卜喜欢旅游,好了大家应该知道这是个什么题了。话说萝卜旅游喜欢节省体力。太远的路他可不想走~ 所以萝卜想让你帮他设计个程序解决他的偷懒问题。萝卜也是个有名的acmer,所以他可不想就这么简单让你AC 了,所以呢,萝卜想问,从S 点到达E点的最短路径的条数有多少条?Input第一行为T,代

2011-10-29 21:22:40 601

原创 AOJ I

做不出= = 英语郁闷死!I – 因式分解Time Limit: 1000MSDescriptionRecently Georgie has learned about polynomials. A polynomial in one variable can beviewed as a formal sum anxn + an-1xn-1 + . . . + a1x + a0

2011-10-29 21:21:10 580

原创 AOJ H 幻方右下角的数

H – 奇幻方阵Time Limit: 1000MSDescription幻方是在一个n*n 的矩阵中放置从1 到n2的数,每个数只出现一次,并且在每行,每列及对角线的和是一样的。这个问题的焦点是奇数幻方,它意味着n 是奇数,你将使用下面的方法来构造奇幻方阵,最基本的规律是向右上角移动,下面让我们一步一步进行。1、让我们开始在最上面的一行的中间放上1(在这个例中n=3)

2011-10-29 21:19:12 1469

原创 AOJ G 找规律,生成函数,pick定理

G –平面直线与坐标轴所围成的区域中整点的个数Time Limit: 1000MSDescriptionKK喜欢做数学题,特别是有难度的数学题,他最喜欢钻研了,但是最近一道题目确把他难住了,题意思如下:求平面上由x+2*y=n 与两坐标轴所围成的直角三角形内(包括边上)的整点的个数,其中整点表示x,y都取整数的点.你能帮助他吗?Input第一行输入一整数T,表示

2011-10-29 21:17:08 751

原创 AOJ F pick定理

pick定理:多边形的面积=多边形内的点+多边形边上的点/2-1;在向量a(n,m)边上的点有gcd(n,m)个。F – Electric FenceTime Limit: 1000MSDescription在本题中,格点是指横纵坐标皆为整数的点。为了圈养他的牛,农夫约翰建造了一个三角形的电网。他从原点(0,0)牵出一根通电的电线,连接格点(n,m)(0(p>0

2011-10-29 21:14:44 659

原创 AOJ E

E - Raucous RockersTime Limit: 1000MSDescription你刚刚继承了流行的“破锣摇滚”乐队录制的尚未发表的N(1 的版权。你打算从中精选一些歌曲,发行M(1 多可以容纳T(1 不巧你是一位古典音乐迷,不懂如何判定这些歌的艺术价值。于是你决定根据以下标准进行选择:歌曲必须按照创作的时间顺序在CD盘上出现。选中的歌曲数目尽可能

2011-10-29 21:10:04 638

原创 AOJ D 坑爹的模拟好题!

这题又WA了N次.... 悲催咯~~ 很多小细节什么的!这是思维能力啊!!蜗牛!快爬!Time Limit: 1000 MS (C/C++) Memory Limit: 65536K (C/C++)Problem Description很久以前有一只蚂蚁,某天在路上走着走着,突然看见了一只蜗牛,爬的很慢。心想自己虽然比它小,可是跑得比它快,于是蚂蚁想跟蜗牛进行一次马拉松比赛,想

2011-10-29 21:08:54 854

原创 AOJ C 模拟

C -大家一起来排队Time Limit: 1000MSDescription还记得每学期开学第一节体育课吗?小学的朝思暮想,中学的激动以及大学的无奈。那你们是否还记得每次上课都要做的第一件事是什么吗?对!就是按高矮来排队,先把我们分成四排,高的站左边,站后面。那时候很好玩吧,有时候不知道怎么排,就会被老师骂。现在这里一共有N个人,排成一排(从低到高),另外有两个空的队

2011-10-29 21:06:36 1131

原创 AOJ B 钉子小球模拟题

B - 钉子和小球Time Limit: 1000MSDescription有一个三角形木板,竖直立放,上面钉着n(n+1)/2 颗钉子,还有(n+1)个格子(当n=5 时如图1)。每颗钉子和周围的钉子的距离都等于d,每个格子的宽度也都等于d,且除了最左端和最右端的格子外每个格子都正对着最下面一排钉子的间隙。让一个直径略小于d 的小球中心正对着最上面的钉子在板上自由滚落,小

2011-10-29 21:04:57 951

原创 AOJ A a^b%c

段学姐的题啊~~ 热泪盈眶的WA了我3次不明白为啥啊.....很水的二分快速幂取模法。#includeusing namespace std;int mod;int KK( int a,int b ){ if( b==1 )return a; if( b==0 )return 1; int ans; if( b

2011-10-29 21:01:14 622

原创 AOJ 2011/10/29 bySen

大家不用找了= =,AOJ是挂在咱内网的。因为太过霸气取名叫AOJ了= =。貌似是很有霸气的啊~~嘿嘿0U0这是我出的第一题,第一次队内练习赛,虽然是个水题啊,也只是我刚刚A掉的题。很水很水的说......题目:坑爹的叶萝卜描述:叶萝卜喜欢旅游,好了大家应该知道这是个什么题了。话说萝卜旅游喜欢节省体力。太远的路他可不想走~ 所以萝卜想让你帮他设计个程序解决他的偷懒问题。萝卜

2011-10-28 17:52:31 712 1

原创 POJ XXXX 最短路径与次短路径的条数

几天没有做题了。想好好的整合一下知识。不然的话真的采用题海战术这样绝对是不明智的!鄙人目前对图论,组合数学,计算几何感兴趣。DP还好~做题做了一道次短路径的题。以前也想过这样的解法并且也还码过代码,很明显的WA了。这次借鉴了网上的做法,并个人做了认真的思考。看来我对Dij的算法理解还是不是很深啊!虽然通过YY,想出了最短路径条数的计算方法,次短路径却怎么也解决不了。研究过大神的算法

2011-10-28 17:37:23 2924 2

原创 POJ 1099 模拟

这题模拟得很蛋疼!所以来写一点心得。众所周知,OJ采用的读取文件的方法,所以会和我们肉眼看到的情况有些不同。拿这题为例,char(0)与char(32)看上去的效果是一样的,32为正宗的空格,而0为不能输出的字符,用看上去是一样的,但实际上计算机处理的时候却有很大的差异,当然啦,计算机比较的是ASCII码值,看上去一样才不管呢.....另外这题的话,对于Web页面的输出,还是应当cop

2011-10-27 10:13:31 806

原创 POJ 2001 Trie 字典树

本身写链表就不是很强,搞acm就是这样,一点点不知道,模棱两可的话 自己是写不出代码的!一定是要对这个算法熟悉了,才能写出来,对于链表尤其是这样!不然对链表进行next操作和当前节点赋值操作的时候都会出问题!这里建了一棵字典树,26插树????用尾插发写的。这几天一直在看专业书,A题比较少。另外这题真的加深了我对树形结构与指针的使用。感觉很不错,对链表的操作过程,感觉要形象的理解才能做出来,不然就

2011-10-24 21:14:20 636

原创 呀呀呀......

这几天在学习Linux中...... 表示很有兴趣~~~ 程序慢慢A吧~~~~

2011-10-22 21:06:18 588

原创 POJ 2118 Matrix线性递推

第一次做这种少人做的题目,感觉好爽啊~~~ 这个题目的解法借鉴了Matrix67大神的好文章:10种经典的矩阵解法 这里讲得很好,我用的是矩阵的经典7,专门用来借线性递推的。再结合矩阵的快速幂,这题无疑是小细节要注意注意了!#include#define MAXN 101#define mod 10000#define ull unsigned long longusing

2011-10-20 18:10:28 841

原创 POJ 3613 图论思想转化

很有意思的题= =..... 紧跟zzy大神的步伐A题.... 这里结合离散数学的知识:离散数学中图的矩阵表示法 用i,j为1表示i到j有一条边,A*A即A^2就是说i-j为2条边的路径种类有多少条。但是这个题的话是运用Floyd的思想,每次更新边使得路径条数+1.多的不说了 不说i我的思想。但是对图论的理解又进了一步!#include#define MAXEdge 1000005#d

2011-10-20 16:08:40 648

空空如也

空空如也

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

TA关注的人

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