2017.11 程序设计基础月考

D. 骰子点数之和问题

单点时限: 2.0 sec

内存限制: 256 MB

//********** Specification of Combination **********
double probability(int n, int k);
/* Precondition:  n和k为整数
   Postcondition: 返回n个骰子同时扔后点数之和为k的概率
*/
double probability(int n, int k) { //TODO: your function definition

}

#include <stdio.h>

int main() {
    int n, k;
    scanf("%d%d", &n, &k);
    printf("%.6f\n", probability(n, k));
    return 0;
}

骰子的六面分别是 $1,2,3,4,5,6$。

样例

Input
2 6
Output
0.138889

提示

每题共有 $10$ 组测试数据。

  • 对于测试点 $1,2,3$,$1 \le n \le 3$,输出与答案误差不超过 $10^{-3}$ 认为正确。
  • 对于测试点 $4,5,6,7$,$1 \le n \le 10$,输出与答案误差不超过 $10^{-3}$ 认为正确。
  • 对于测试点 $8,9,10$,$1 \le n \le 2~000$,输出与答案误差不超过 $10^{-6}$ 认为正确。

对于所有测试点,$1 \le k \le 10^9$。