这几天真是做这个做上瘾了,估计是beginner的题做的比较H,哈哈。
但话又说回来了,尽管都很简单,我还是收获不少。
ZOJ 1216, 放卡片的问题,记得小时候看见这个问题。
用递推很容易得到:
f(n) = f(n-1) + 1/(2n)
f(0) = 0
这样就很容易求解了。
注意到以下几点:
1,我用了空间换时间的方法,预先把 n<100000的f(n)都计算出来,成为一个表,然后查表便是。
2,scanf() 的返回值:成功时返回置参数的个数,出错返回EOF,在实现中,EOF常可能是 -1,故
while( scanf( ... ) )
这样是不对的,应该:
while( EOF != scanf( ...) )