码迷,mamicode.com
首页 > 其他好文 > 详细

做题目的一些小经验

时间:2015-03-12 18:31:39      阅读:95      评论:0      收藏:0      [点我收藏+]

标签:

  1. XOR按位异或运算,比如4跟6是100和110,按位异或后为101,即为5;该运算有个特性,a XOR b=c,a XOR c=b;
  2. 数轴原理求最大值:#define max(a,b)  (((a)+(b)+abs((a)-(b)))/2)
  3. 计算是i的几次方是2的64次方:top= ceil(64 * log(2) / log(i)) - 1;
  4. 有时候数太大,有个优化的方法是先化作log,再通过exp转化回去:UVA10883,比如组合数转化为对数:
  5. 11889UVA 已知a,c . 求b使a,b的最小公倍数为c,b一定是c/a的多少倍
  6. 一个数的因数的数目等于所有质因子的个数的乘积:1000有3个2,3个5质因子,即可以分解为8和125两个完全平方数,8有4个约数(1,2,4,8),125有4个约数(1,5,25,125),4*4=16就是1000的约数个数
  7. 11076是一道数学题,给你一个数,求它的k次方后的前三位数和后三位数
    方法:前三位用double保存起来,然后乘以1000可得,后三位取余,比如求123456的2次方,1.23456*1.23456 = 1.5241383936,然后就1.52*1000就是前三位,这样可以避免多位数字的出栈,后三位则是每次对1000取余,就剩下456*456=40936;即936位最后三位

  8. 求约瑟夫环的输出顺序时:这一次淘汰的号数 = (上一个淘汰的人+走的步数-1)%剩下的人数。

  9. 有时候打表还是比直接计算要快。

做题目的一些小经验

标签:

原文地址:http://www.cnblogs.com/ACMERY/p/4332870.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!