《算法竞赛入门经典》Chap4

《算法竞赛入门经典(第二版)》第四章

思考题

待补充

示例程序

待补充

例题

待补充

习题

待补充

总结

  1. hypot()函数用以计算直角三角形的斜边长;
  2. 对于组合数公式 C n m = n ! m ! ( n − m ) ! C_{n}^{m}=\frac{n!}{m!(n-m)!} Cnm=m!(nm)!n!,在m≥n-m时约去 n ! m ! = n ( n − 1 ) … ( m + 2 ) ( m + 1 ) \frac{n!}{m!}=n(n-1)…(m+2)(m+1) m!n!=n(n1)(m+2)(m+1),在m<n-m时约去 n ! ( n − m ) ! = n ( n − 1 ) … ( n − m + 1 ) \frac{n!}{(n-m)!}=n(n-1)…(n-m+1) (nm)!n!=n(n1)(nm+1),通过以下代码实现;
    if(m<n-m)
    	m=n-m;
    
  3. 素数判定只判断不超过sqrt(x)的整数i,因为因子具有对称性,若有a*b=x,则a、b均为x的因数;
  4. 对于 c h a r ∗ c o n s t ∗ ( ∗ n e x t ) ( ) char * const *(*next)() charconst(next)()这样的指针,一个原则是向右舍弃*,即按照 c h a r ∗ c o n s t ∗ char * const * charconst, c h a r ∗ c o n s t char * const charconst, c h a r char char的顺序分解;
  5. 两段的递归函数一般使用三目运算符。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值