在Linux下面玩ACM的新手们可能会喜欢用的一个工具

    如果你想稍微提高一下做ACM题目的效率的话,下面这个工具应该很适合你。我的这个工具名称叫做 sgxiao_acm.pl ,是一个perl写成的脚本,用于生成一个简单的代码C/C++/Java代码,并且自动添加上注释,注释的内容包括代码建立的日期,作者,以及那个题目的title。生成的结果如下所示:

 

 

 

 

    上述代码是我输入了POJ上面的1980号题目之后生成的结果,这个结果将保存为1980_PKU.cpp。值得注意的是,1980这个题目的title已经自动在注释里面了,这就省却了我们到每个题目的page上面去拷贝题目的时间了。

 

    要完成上述功能,可以将该工具放置在linux的某个目录下面,我先假设你是放置在自己的home目录下面,然后输入如下命令:

 

 

$ ./sgxiao_acm.pl

please input the id of the problem: 1980

please input the school (PKU ZJU UVa Ural): pku

please input the LANG (c c++ Java): C++

 

 

回车之后,会在当前目录生成 1980_PKU.cpp 的文件了。如果你希望一步到位,也可以以参数的形式输入:

 

$ ./sgxiao_acm.pl --id=1980 --lang=c++ school=pku

 

    如果你经常游荡于各地的OnlineJudge,例如国内著名的北大POJ、浙大ZJU,又或者是国外的UVa 或者是Ural的话。用了这个工具能够稍微提高一下你的A题效率,当然我认为该工具至少还能够再更强大一点点。如果你有兴趣,你可以在日常使用的过程中,再帮忙进行必要的修改。让这个工具支持更多的OJ系统,支持更多的语言生成的代码,以及支持更多方便提高工作效率的各种其他特性。目前这个工具还缺乏一个比较好的--help,不知道谁能帮忙添加上去。修改过后希望你也能把修改过后的版本发布出来供大家分享。我真心希望这个工具能成为每个ACMer都必用的工具。

 

    该工具使用了perl的一个外部库,叫做LWP,用作抓取problem页面的title。但是可能在某些发行版上的perl版本并不默认安装这这个库,所以你必须自行添加。你们可以使用perl的cpan来进行安装,至于具体的cpan如何使用,请参考http://blog.csdn.net/chinalinuxzend/archive/2008/04/30/2350464.aspx

 

   同时我也希望这个工具能能在大家的共同努力下面,移植到更多的平台下面。我目前是在ubuntu 8.04的版本下面使用的。想在Linux下面coding,又不想安装Linux的话,推荐你用putty连上unix-center.net的服务器上面练习。具体方法,可以参考unix-center.net的帮助页面 http://www.unix-center.net/?p=10 

 

 

当前版本的代码如下:

 

 


 


 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值