摘要:
题目:实现函数double Power(double base, int exponent),求base的exponent次方。不需要考虑溢出。分析:这是一道看起来很简单的问题。可能有不少的人在看到题目后30秒写出如下的代码:1 double Power(double base, int exponent)2 {3 double result = 1.0;4 for(int i = 1; i <= exponent; ++i)5 result *= base;6 7 return result;8 }上述代码至少有一个问题:由于输入... 阅读全文
posted @ 2012-08-10 22:44
wolenski
阅读(312)
评论(0)
推荐(0)
摘要:
题目:把n个骰子扔在地上,所有骰子朝上一面的点数之和为S。输入n,打印出S的所有可能的值出现的概率。分析:玩过麻将的都知道,骰子一共6个面,每个面上都有一个点数,对应的数字是1到6之间的一个数字。所以,n个骰子的点数和的最小值为n,最大值为6n。因此,一个直观的思路就是定义一个长度为6n-n的数组,和为S的点数出现的次数保存到数组第S-n个元素里。另外,我们还知道n个骰子的所有点数的排列数6^n。一旦我们统计出每一点数出现的次数之后,因此只要把每一点数出现的次数除以n^6,就得到了对应的概率。该思路的关键就是统计每一点数出现的次数。要求出n个骰子的点数和,我们可以先把n个骰子分为两堆:第一堆只 阅读全文
posted @ 2012-08-10 22:14
wolenski
阅读(2686)
评论(0)
推荐(0)