ACM
天下第一好大人
天下第一好大人
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
[ACM] 经验总结(一)
1> I/O效率问题一篇文章中指出——getchar()/putchar()快于scanf/printf快于cin/cout有些题目数据可能非常多,但是对数据的操作可能却相对简单,这时候不要因为I/O导致TLE,我想,几乎所有人都遇到过cin/cout换scanf/printf才能过的情形。另外就是对于整型,可能手动解析是最快的(我还没试验,不能下定论)。因为scanf/sscanf原创 2012-12-19 21:44:47 · 1728 阅读 · 0 评论 -
[ACM] ACM常见错误
1 多个test case,忘记将数组(或vector)清理,导致下个test进入时累积了老数据。2 考虑不周全,一定要详细看题目,把边界数据过一下。3 不同平台的打印格式问题,例如printf( "%I64d", x );和printf( "%lld", x );有时候编译没问题,运行出错。原创 2013-03-26 14:02:09 · 1372 阅读 · 1 评论 -
[ACM] 推荐做题的OJ
1> http://poj.org/ 特点:题目很多,对提交的结果有各种排序(运行时间、内存大小、代码长短等),可以对各种目标优化,有时候做题并不仅仅是为了AC,不是吗?2> http://codeforces.com 特点:界面较美观,题目大部分比较简单,适合我这种入门选手,而且可以看别人提交的代码(这对我来说是最重要的,不是为了抄袭,而是为了学习)。偶尔参加比原创 2012-12-19 18:58:21 · 1459 阅读 · 0 评论 -
取模速度优化
做ACM题时,经常遇到取模操作,而取模操作是算术操作中最慢的(在当前的计算机硬件中基本都是这样)。1 对2的幂取模(2^k),实际等同于和(2^k - 1)进行“位与”操作例如对8取模,因为计算机内部是二进制表示,所以可以对二进制位进行位与操作。n % 8 == ( n & 7 ) // 因为C语言取模操作会返回负数,所以当n是负数时,它们是同模关系。2 经常有一原创 2013-06-03 17:03:57 · 6918 阅读 · 1 评论
分享