自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

天下的技术专栏

独立之思想 自由之精神

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

原创 [USACO] Name That Number

例子只有四位数,却有81种组合方式,题目规定最长可以为12位数字,则有531441种组合方式,把每一种组合通过查找词典库进行匹配,这样的效率是无法忍受的(尽管查词典时可以用Binary Search),所以必须另谋出路。我们倒过来想一想,反正字母和数字的映射关系是固定的,是否可以把词典中的词翻译成数字,然后直接进行数字的比较,而又因为词典已经是升序排列了,这样只需从头到尾遍历一次,就可以找出所有的可能了。原来我是打算把数字作为字符串存储的,然后用库函数进行比较,比如GREG转换成字符串“4734”,不过我觉

2011-02-26 22:38:00 430

原创 [USACO] Transformations

分析:设原始矩阵为a,变换后的矩阵为b,对于第一种情况,元素a[i, j]旋转90度之后在b中的位置为b[j, n-i-1],n是矩阵大小。同理可以找出2,3,4,6变换前后的映射关系,情形5需要两次变换而已。读数据时用scanf读到/n会停止,可是我声明的是字符数组,所以/n会读到数组里,所以需要fgetc把/n忽略掉。/* ID: yffbrav1 LANG: C TASK: transform */ #include #include #define N 10 int main()

2011-02-26 13:51:00 398

原创 [USACO] Milking Cows

题目叙述的很清晰,关键的一步就是先把输入数据按照开始时间进行排序。问题就处在这里了,我用的快排,可是1000数据量的测试总也过不去,调试才发现,快排写错了,我只是把开始时间进行了排序,可是相对应的结束时间并没有跟着调整,结果出现了2万多秒的时间间隔!!唉!本来想用结构体定义一下的,但是一想两个元素也不难就懒的写,结果杯具发生了,代码不清晰不说,还调试了好长时间,得不偿失啊剩下的程序逻辑不是很难,把所有情况考虑清楚马上就可以AC了~~/* ID: LANG: C TASK: milk2 */ #in

2011-02-25 16:44:00 436

原创 [USACO] Broken Necklace

充满杯具的一道题,提交了5次才AC。。。/* ID: LANG: C TASK: beads */ #include #include #include #define N 350 int main() { FILE *fin = fopen("beads.in", "r"); FILE *fout = fopen("beads.out", "w"); char nklace[2 * N + 1]; int left, right, max; int i, j,

2011-02-23 15:01:00 524

原创 [USACO] Friday the Thirteenth

<br />算出每个月的13号距离1900.1.1经过了多少天,然后模7就可以了,这个叫暴力破解(Brute force)?分析上是这么说的,whatever。。。<br />分析的循环又写的比我简洁,看来以后我得注意一下优化和深入分析了。。。<br /> <br />/* ID: LANG: C TASK: friday */ #include <stdio.h> #include <stdlib.h> /*#define leap(y) (y%400==0) || (y%100!=0 &&

2011-02-22 12:10:00 347

原创 [USACO] Greedy Gift Givers

这道题也不难,把题目读透,把例子自己走一遍就OK了。实现上,就是读取数据出了一点儿错,最开始我用fgets()读结果读到了‘/n’‘/0’这样的字符串,最后改用fscanf就好了,它会跳过white space。声明数组时,我想用一个account解决问题,没想到还给自己找了麻烦(+=不是=),早知道就声明两个数组,一个用来放原始数据,一个用来做运算,然后相减,齐活儿。。。上代码!/* ID: LANG: C TASK: gift1 */ #include #include #includ

2011-02-21 20:13:00 529

原创 [USACO] Your Ride Is Here

<br />没啥说的,直接上代码。。。<br /><br />/* ID: LANG: C TASK: ride */ #include <stdio.h> #include <string.h> #include <stdlib.h> int main() { FILE *fin = fopen("ride.in", "r"); FILE *fout = fopen("ride.out", "w"); int clen, glen; int cresult, gres

2011-02-20 21:56:00 442 1

空空如也

空空如也

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

TA关注的人

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