我进入娄山中学已经有1年多了,也就是说我学习编程也有1年多了,在这一年多的时间中,我已经在zerojudge里面做出了300多道题。有些排名靠后的同学也许会觉得300是一个很大的数字,其实不然。300道题目在题目总数中占不了多少,只是大多数人并不会把做完作业多出来的时间用来去做题目。其实抓住平时的空闲时间加以利用,就可以取得很大的效果。
举一个例子,假设每天有10分钟的空闲时间。那么第一天,你可以用这10分钟读清楚一道题;第二天,你可以用这10分钟来编程;第三天则可以调试;第四天就可以提交。如没有通过则回到第三步,通过了就又重头开始。如果你一直这样坚持着,那么一年下来至少能做出91道题目。这仅仅是一个例子,因为生活中你不可能每天只有10分钟。
另一个方面,我之所以能够做这么多题目也是需要帮助的。就像有一句话:你一个苹果,我一个苹果,相互交换,还是一个苹果;你一个想法,我一个想法,相互交换,就是两个想法。如果凭我一个人的能力,1年多的时间,能做到这么多的题目,我不是神是什么?所以,把他人的想法和自己的想法结合在一起是我做题的策略,这并不是说,我从别的地方随便找一段代码,复制黏贴送出,然后AC。试问:这样做意义吗?对自己的知识有帮助吗?这样做不等于是在浪费时间吗?应该说为了方便与其它学编程的同学的交流,我学习了另外一种语言---C++,学习它并不代表着我可以复制黏贴C++的代码,而是为了扩充自己的知识面。实不相瞒,我现在所有在ZJ中做的题目,有1/4是靠了别人的帮助或看了别人的解题心得,在不知不觉中能力就往上拔了。
说了那么多,也应该有些实例。就拿a410来说吧,为了做出这道题目,我曾经动用过2个小号,在传送了9次后才成功。第一次的代码是这样的:
var
a,b,c,d,e,f,x,y:real;
begin
while not eof do begin
readln(a,b,c,d,e,f);
if (a*e-b*d=0) and ((c*e-b*f<>0) or (a*f-c*d<>0)) then writeln('No answer')
else if (c*e-b*f=0) or (a*f-c*d=0) then writeln('Too many')
else begin
y:=(a*f-c*d)/(a*e-b*d);
x:=(b*d-a*e)/(f*b-c*e);
writeln('x=',x:0:2);
writeln('y=',y:0:2);
end;
end;
end.
毕竟是学长出的题目,身为学弟的我肯定有出错。果不其然,NA了。不明为何的我在noip吧里询问,一些热心的“学霸”很耐心地帮助了我,才发现原来我把x的分子分母都弄倒了。在经过一度的更改后,才在ZJ里AC。
总之一句话:群体的力量永远大于个人的力量。希望大家可以在以后多多互相交流学习,共同进步!QAQ
魏子轩:现就读于娄山中学初一年级,八个月的时间里在ZEROJUDGE中解出了三百八十多道题,他在程序设计学习方面付出的努力值得敬佩,是娄山oier们的标杆。
浙公网安备 33010602011771号