0.
想写好久了,在一个星期的“缓冲周”(其实看了一星期小说)之后,终于动手了。
题目本来是期中考在NOIp之前的,不过想了想,还是将NOIp放在前面,因为这篇总结在某种程度上也是高中一年的学习的总结;而这一年,OI占有很大的成分。
1.
关于梦想
曾经很多次在写给Miss Q的周记里谈到Dream这个问题,一直都在谈自己的梦想是怎样怎样;梦想的重要性之类的问题。但是在经过这一年的折腾,明白了许多,有关梦想的成分,有关梦想的实现。
是的,我们常常谈论梦想,但是又怎样去实现梦想呢?
2.
起步
认识NOIp是个很偶然的机会,凭借生疏的记忆,是一张写有“有编程经验的同学都可以报名”的报名表把我吸引到江门一中电脑五室的。面对那栏“有无任何电脑知识”的空格,我填下了略懂python、c、批处理。
结果就这样开始了我的NOIp学习。在仅存的代码中,我发现我是在一个星期左右的时间学会了pascal的算法,然后开始乱打乱撞地学习算法。NOIp09因为害怕的原因,并没有报名参加。
因为xs放产假(这个人我还是从高三的前辈口里才得知= =||),一直都没人给我(们)上课,所以在大部分时间里都是在做一些水题,或者去搞点其他有趣的东西,总体来说,进步很慢。直到有一天开始泡OIBH,才发现什么是神牛,什么是距离,什么是真正的OI。
那个时候每天中午都会去机房(现在也是这样),慢慢地开始刷OJ,学搜索,学DP,刷USACO。无奈的是,大部分都是看着题解做的,没有多少是经过自己的大脑思考。
这是高一的上学期,因为在普通班,学习还是要抓紧的,而且只有那两次的考试来决定分班的命运,所以我还是在第一次期中考努力了一下(当时没怎么专注OI)、期末下滑了一下(好吧,我承认我在泡妞= =||),结果以全级100的名次进入了实验班,也就是现在的5班。(当然还有高一开始同班的女强人,这里你看不见吧~orz)
就这样晃一下就过了一个学期,在第二学期,我开始“系统”地做usaco,有“目的”地做题,但是由于没有怎么认真地上过课,水平还是比较低。高三的前辈走了(也就一个)。
好吧,到高二了,也就是NOIp2010了。
3.
NOIp x 2010
xs回归,带着一帮高一的,然后准备初赛。我面对初赛那些可怕的阅读程序(是人写出来的么?)害怕了很久,也准备了很久。结果初赛以JM第二的身份进入复赛(太弱了= =||);另一方面,那一帮高一逃了一大半,估计是被初赛成绩吓倒了吧。我也想告诉他们,当年我就没去参加了……不过现在想起来也后悔;迟了。
开始准备复赛,我继续盲目地刷usaco,也学了一点图算法。
5个星期的时间也随着每天在机房的时光急速流走了。
2010.11.18
这是一个我不会忘记的日子,带着一个我不会忘记的数字:
166。
是这次期中考试的级排名。居然有这么差,刷新了从初三一模保留至今的记录(当年我还是在泡妞= =||)。面对同学、老师的责备,我的确很难受。
2010.11.20
这天是我这个学期起得最早的一天:5:50起床;
6:20出发中山jz(膜拜lily的生物钟);
7:15到达jz;
7:30看见Ylen的名字——在我旁边;
8:00进入考场;
8:30开始看题;
9:12完成第一题;
10:30不再纠结第二题方程;
10:45苦恼+后悔+惊叹Ylen的打字速度;
11:30交卷;18:40拿到1AC的成绩;
19:50回到JM;
21:00回到家,NOIp2010结束。
这是完败的结束。
这是NOIp+文化科完败的结束。
4.
缓冲周
21号决定要将这次滑铁卢忘记,有退出OI的念头;去书店里和花花买了100+rmb的书,打算开始学习PHP。
之后的一个星期,开始了过渡时期,刻意地减少了对OI的想念,划出部分时间来看小说,居然在一个星期里看完了三本15w字的。
5.
计划
离NOIp2011的开始还有一年时间,先拟定一个计划,方便以后跟进吧。
OI:
0 转语言,c++ & begin@tyvj 语法题
1 初级数据结构 & USACO section 1.1 & begin unit2
2 搜索 & USACO Chapter 1 & 寻找一个好的题库
/* 暂时 */
学习:
0 听课
1 写练习册
2 做晚练
3 预习、复习
4 争取月考(你妹的月考!)能进步到100内
5 多看英语文章(去刷英语OJ吧)
估计最近一段时间会减少去机房的时间了,二、四、六中午+星期四第八九十节+星期六晚上+星期日下午都留给OI吧,其余的要回归到文化科上了。
rp++!I'll attack back!
6.
还是梦想
是的,我曾经有过很多梦想,或许明天就会萌发出一个新的梦想。
室友问我以后想去哪里读计算机,我果断地回答了以后不想选择计算机。我希望做一个帮别人实现梦想的人——一定要走计算机的路么?我不这么认为。(结果被室友说我是个矛盾的人,我只好硬造了一个词:矛盾体。= =||)
哪里有梦,哪里就有奋斗。
Posted: November 27th, 2010
Categories:
OI ,
学习 ,
生活
Tags:
OI ,
study
Comments:
2 Comments .
题目描述
好吧,我觉得真的很难……
http://fayaa.com/code/view/15294/
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32
#include
#include
#define MAX 60
int main
( )
{
int monkey
[ MAX
] , n
, m
, i
, j
, remain
;
memset ( monkey
, 1 , sizeof ( monkey
) ) ;
scanf ( "%d %d" , & n
,& m
) ;
remain
= n
;
j
= 0 ; monkey
[ 0 ] = 0 ;
while ( remain
!= 1 )
{
i
= 0 ;
while ( i
!= m
)
{
j
= ( j
+ 1 ) % n
;
if ( ! j
) j
= n
;
if ( monkey
[ j
] ) i
++;
}
monkey
[ j
] = 0 ;
remain
--;
}
i
= 1 ;
while ( ! monkey
[ i
] ) i
++;
printf ( "%d\n " , i
) ;
return 0 ;
}
Posted: November 23rd, 2010
Categories:
OI
Tags:
OI
Comments:
No Comments .
好吧,去耍了一天,纪中就是一个很适合逃课的地方……
下年努力咯,定计划了……
Posted: November 20th, 2010
Categories:
OI
Tags:
OI
Comments:
No Comments .
来了!
抛开那些不开心的事情吧:D
Posted: November 19th, 2010
Categories:
Uncategorized
Tags:
Comments:
No Comments .
题目描述
spfa秒杀啦!
代码
Posted: November 15th, 2010
Categories:
OI ,
USACO
Tags:
OI ,
USACO
Comments:
No Comments .
……
Posted: November 14th, 2010
Categories:
Uncategorized
Tags:
Comments:
1 Comment .
虽然之前已经用floyd写过,不过今天还是用dij写一遍……
题目描述
接着就是红果果的dij啦
http://fayaa.com/code/view/14861/
没用堆写……
提交了两遍,第一次错在布尔表达式,害我查了很久= =||,是不亚于写老K时将并查集合并写错的沙茶行为了,下次写if的判断一定要给每个分条件加上括号啊……
话说我发现我上次交的代码给人家拿去抄了……额,原来他的第二是这样刷来的= =||
--------------------------------------分割---------------------------------
今天和Ylen 聊了一会,果然是早学的孩子早当家啊,获益匪浅。挺羡慕他们的。
Posted: November 6th, 2010
Categories:
OI ,
USACO
Tags:
oi,usaco
Comments:
1 Comment .
小小谈下最近的生活……
这次不说泡妞砸了(确切说是被无视了),不说考试傻了(期中考又要裸考了),不说家里的情况(不知道不知道,我真的什么都不知道),就说说现在NOIp的水平吧。
一个字:烂。
做USACO,基本是看着题解来翻译;
刷水题,基本是N wa,1AC;
参加模拟赛,基本找虐,次次不是爆零就是一道都写不出;
看算法,基本傻了,到现在都还没有写过最短路 sssp(我的Dij啊,我的SPFA啊!)。
还有15天就复赛了……
最近在“加班加点”地看资料,在机房里看,在下课看,连晚修也在看。不止一次地有同学在围观,然后说:
“你太恐怖了,看什么东西?”
“我看见这些就头晕了…… ”
每次遇到这样的对白,我都只好无奈地告诉ta,其实“我也不会,我不过是装逼,哈哈。”
可是到现在想想,我又是有多少是掌握的呢?不知道,一年的学习的确会了不少东西,但是这条路却只是一个开头,似乎是一条通向高山的长路。
想想当初是怎么开始学习OI的?不过是看见一张报名纸,能够提供一台电脑,一节课给我,所以就报了。结果呢,结果就开始了OI的旅途。
在这个旅途上,一开始还是有伴的,几个高二(现在高三了),几个高一的,结果呢,他们都退出了,就剩下我每天坚持中午和第八节课机房;
一开始还是有老师的,每个星期一节课,结果呢,结果老师跑了,说:“到了这个地步,你自己看书做题就可以的了。”叫我情何以堪?我才学到动态规划啊!
不过这也没什么好埋怨的,我的条件已经比许多人要好了,NOIp贴吧里总有几个高三的在发悲情贴,说从高三才开始学,怎么怎么痛苦。
然而最可怕的敌人是孤独。
第一次那么坚持地学习一样东西,却是要孤独地在原野上奔跑。这种孤独注定是不被别人理解的,我不想去一次次地向别人阐述我在干什么,可是总是有人用其他眼光来看我:
“你不用学习啦,搞这个就行。”
每每听到这样的话,我的肾上腺素总会激增,想和ta大谈我的目标。可是渐渐明白,这样的抗议其实不过是徒劳的,宁愿安安静静建造自己的梦。
在前几个星期准备初赛的时候,我总是在想,如果这次初赛挂了,就实在是太丢人了,学了一年,还经常在班主任面前强调自己,却在初赛就挂了,该怎样下台啊?突然间OI变成一个重重的担子。
然后就在初赛的那天,出发前的午休,突然觉得担子轻了,挂了就挂了,大不了就“退役”了,我还想学python,学js,玩GAE呢……
事与愿违?
结果还是顺利地挂 过了初赛。
正如USACO Chapter2的标题:Bigger Challenges。面前就是更大的挑战了。
最近一段时间迷信上了rp,或许这两天的状态低迷是因为rp 低吧,可是又能说明什么?
不知道,我就只知道,现在已经没有任何退路了,一路前进吧。
Posted: November 6th, 2010
Categories:
Uncategorized
Tags:
Comments:
No Comments .
喜欢这样蓝蓝的天,
喜欢这样无尽的跑道,
喜欢一大群朋友聚在一起,一起欢笑,
喜欢这样的五班.
Posted: October 30th, 2010
Categories:
Uncategorized
Tags:
Comments:
No Comments .
题目描述一个先:
有两个关键点:
将整个平面图看作一个图,然后再将栏杆标记为不能走就ok了
两次bfs来做flood fill?不用的,将两个起点直接放到队列里就可以了(不就是两次bfs么= =||),不过这样做可以减少很多代码量
代码
下面是令我傻了3天的地方:
procedure flood_fill;
var
i:integer;
temp:node;
begin
while front<tail do
begin
front:=front+1;
for i:=1 to 4 do
begin
temp:=queue[front];
inc(temp[1],d[i,1]);
inc(temp[2],d[i,2]);
if (fence[temp[1],temp[2]])and(not visited[temp[1],temp[2]]) then
begin
inc(tail);
queue[tail]:=temp;
count[tail]:=count[front]+1;
visited[temp[1],temp[2]]:=true;
end;
end;
end;
end;
procedure flood_fill;
var
i:integer;
temp:node;
begin
while front<=tail do
begin
front:=front+1;
for i:=1 to 4 do
begin
temp:=queue[front];
inc(temp[1],d[i,1]);
inc(temp[2],d[i,2]);
if (fence[temp[1],temp[2]])and(not visited[temp[1],temp[2]]) then
begin
inc(tail);
queue[tail]:=temp;
count[tail]:=count[front]+1;
visited[temp[1],temp[2]]:=true;
end;
end;
end;
end;
仔细观察这两个代码的不同点......
对了,就是跳出while的条件不同,因为我将front置为0,然后在每次提取队首时再inc(front),这样和置为1看似没什么不同,但是却出现了很大的问题:
后一段代码会爆掉的...
就因为这里调了我两天.orz,细节很重要!看来有必要去复习下模版了.
顺带鄙视下一些水人......现在真是越来越水了.
离复赛还有21天
Posted: October 30th, 2010
Categories:
OI ,
USACO
Tags:
OI ,
USACO
Comments:
No Comments .