Lang:G++
Edit12345678910111213141516171819202122232425262728293031#include <iostream>#include <stdio.h>#include <unistd.h>#include <iomanip>int main() {int N;int M;std::cin >> N >> M;double** f = new double*[N+1];for (int i= 0; i <= N; ++i) {f[i] = new double[6*N + 1];}f[0][0] = 1;for (int i = 1; i <= 6 * N + 1; ++i) {f[0][i] = 0;}for (int i = 1; i <= N; ++i) {for (int j = i; j <= 6 * i; ++j) {f[i][j] = 0.0;for (int k = 1; k <= 6; ++k) {if (j - k + 1>= i) {f[i][j] += 1.0 / 6 * f[i-1][j-k];}}}}std::cout.setf(std::ios::fixed);std::cout << std::setprecision(2) << f[N][M] * 100 << std::endl;return 0;