Submission #3011837
Source Code Expand
n,d = map(int,input().split()) i2 = 0 i3 = 0 i5 = 0 while d%2 == 0: d =d/2 i2 += 1 while d%3 == 0: d =d/3 i3 += 1 while d%5 == 0: d = d/5 i5 += 1 if (d != 1 or i3+i2+i5 > n): print(0) exit() dp = [[[[0 for i31 in range(40)] for i21 in range(50)] for i1 in range(70)] for i in range(101)] dp[0][0][0][0] = 1 for i in range(n): for j in range(70): for k in range(50): for l in range(40): if dp[i][j][k][l] == 0: continue dp[i+1][j][k][l] += dp[i][j][k][l]/6 dp[i+1][min(i2,j+1)][k][l] += dp[i][j][k][l]/6 dp[i+1][j][min(i3,k+1)][l] += dp[i][j][k][l]/6 dp[i+1][min(i2,j+2)][k][l] += dp[i][j][k][l]/6 dp[i+1][j][k][min(l+1,i5)] += dp[i][j][k][l]/6 dp[i+1][min(j+1,i2)][min(k+1,i3)][l] += dp[i][j][k][l]/6 ans = dp[n][i2][i3][i5] print(ans)
Submission Info
Submission Time | |
---|---|
Task | D - サイコロ |
User | rookzeno |
Language | PyPy3 (2.4.0) |
Score | 4 |
Code Size | 860 Byte |
Status | AC |
Exec Time | 990 ms |
Memory | 222600 KB |
Judge Result
Set Name | All | ||
---|---|---|---|
Score / Max Score | 4 / 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 | 660 ms | 190984 KB |
01 | AC | 944 ms | 212232 KB |
02 | AC | 838 ms | 195720 KB |
03 | AC | 799 ms | 202632 KB |
04 | AC | 732 ms | 195464 KB |
05 | AC | 990 ms | 211720 KB |
06 | AC | 919 ms | 222600 KB |
07 | AC | 826 ms | 215176 KB |
08 | AC | 168 ms | 38256 KB |
09 | AC | 750 ms | 191624 KB |
10 | AC | 164 ms | 38256 KB |
90 | AC | 543 ms | 189704 KB |
91 | AC | 546 ms | 189704 KB |