Submission #2114242
Source Code Expand
#include <bits/stdc++.h> using namespace std; int main() { int64_t n, d; cin >> n >> d; double dp[n + 1][71][71][71]{}; dp[0][0][0][0] = 1; for (int i = 0; i < n; i++) { for (int j = 0; j < 71; j++) { for (int k = 0; k < 71; k++) { for (int l = 0; l < 71; l++) { dp[i + 1][j][k][l] += dp[i][j][k][l] / 6; dp[i + 1][min(70, j + 1)][k][l] += dp[i][j][k][l] / 6; dp[i + 1][j][min(70, k + 1)][l] += dp[i][j][k][l] / 6; dp[i + 1][min(70, j + 2)][k][l] += dp[i][j][k][l] / 6; dp[i + 1][j][k][min(70, l + 1)] += dp[i][j][k][l] / 6; dp[i + 1][min(70, j + 1)][min(70, k + 1)][l] += dp[i][j][k][l] / 6; } } } } int a = 0, b = 0, c = 0; while (d % 2 == 0) { a++; d /= 2; } while (d % 3 == 0) { b++; d /= 3; } while (d % 5 == 0) { c++; d /= 5; } if (d != 1) { cout << 0 << endl; return 0; } double ans = 0; for (int j = a; j < 71; j++) { for (int k = b; k < 71; k++) { for (int l = c; l < 71; l++) { ans += dp[n][j][k][l]; } } } cout << fixed << setprecision(10) << ans << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - サイコロ |
User | jbyxm |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 1126 Byte |
Status | RE |
Exec Time | 650 ms |
Memory | 254720 KB |
Judge Result
Set Name | All | ||||
---|---|---|---|---|---|
Score / Max Score | 0 / 4 | ||||
Status |
|
Set Name | Test Cases |
---|---|
All | 00, 01, 02, 03, 04, 05, 06, 07, 08, 09, 10, 90, 91 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
00 | AC | 206 ms | 92544 KB |
01 | AC | 587 ms | 235136 KB |
02 | AC | 527 ms | 215552 KB |
03 | AC | 233 ms | 103680 KB |
04 | AC | 226 ms | 100864 KB |
05 | AC | 650 ms | 254720 KB |
06 | AC | 578 ms | 232320 KB |
07 | AC | 544 ms | 221184 KB |
08 | AC | 110 ms | 50560 KB |
09 | AC | 519 ms | 212736 KB |
10 | RE | 98 ms | 256 KB |
90 | AC | 15 ms | 8576 KB |
91 | AC | 22 ms | 11392 KB |