Submission #3770463
Source Code Expand
#include<bits/stdc++.h> using namespace std; #define int long long #define mod 1000000007ll int N, X, Y, Z; int dp[50][1 << 17]; int p; int pou(int a, int b) { int tmp = 1; for(int i = 0; i < b; i++){ tmp = a * tmp % mod; } return tmp % mod; } int dfs(int pos, int bit) { if(~dp[pos][bit]){ return dp[pos][bit]; } if((bit >> X + Y + Z - 1ll) & 1ll){ if((bit >> Y + Z - 1ll) & 1ll){ if((bit >> Z - 1ll) & 1ll){ return dp[pos][bit] = 0ll; } } } if(pos == N){ return dp[pos][bit] = 1ll; } //if(bit & (1ll << (p - 1ll))){ // bit ^= (1ll << (p - 1ll)); //} int res = 0ll; for(int i = 1ll; i <= 10ll; i++){ res = (res + dfs(pos + 1ll, ((bit << i) | (1ll << i - 1ll)) & ((1 << p) - 1))) % mod; } return dp[pos][bit] = res; } signed main() { cin >> N >> X >> Y >> Z; p = X + Y + Z; memset(dp, -1ll, sizeof(dp)); cout << (pou(10ll, N) - dfs(0ll, 0ll) + mod) % mod << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | E - Iroha and Haiku |
User | youluoy |
Language | C++14 (GCC 5.4.1) |
Score | 700 |
Code Size | 1114 Byte |
Status | AC |
Exec Time | 297 ms |
Memory | 51456 KB |
Judge Result
Set Name | Sample | All | ||||
---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 700 / 700 | ||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask0_sample_04.txt |
All | subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask0_sample_04.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt, subtask1_20.txt, subtask1_21.txt, subtask1_22.txt, subtask1_23.txt, subtask1_24.txt, subtask1_25.txt, subtask1_max1.txt, subtask1_max2.txt, subtask1_max3.txt, subtask1_min1.txt, subtask1_min2.txt, subtask1_min3.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
subtask0_sample_01.txt | AC | 15 ms | 51456 KB |
subtask0_sample_02.txt | AC | 15 ms | 51456 KB |
subtask0_sample_03.txt | AC | 15 ms | 51456 KB |
subtask0_sample_04.txt | AC | 294 ms | 51456 KB |
subtask1_01.txt | AC | 15 ms | 51456 KB |
subtask1_02.txt | AC | 21 ms | 51456 KB |
subtask1_03.txt | AC | 16 ms | 51456 KB |
subtask1_04.txt | AC | 17 ms | 51456 KB |
subtask1_05.txt | AC | 15 ms | 51456 KB |
subtask1_06.txt | AC | 15 ms | 51456 KB |
subtask1_07.txt | AC | 16 ms | 51456 KB |
subtask1_08.txt | AC | 15 ms | 51456 KB |
subtask1_09.txt | AC | 15 ms | 51456 KB |
subtask1_10.txt | AC | 15 ms | 51456 KB |
subtask1_11.txt | AC | 15 ms | 51456 KB |
subtask1_12.txt | AC | 28 ms | 51456 KB |
subtask1_13.txt | AC | 20 ms | 51456 KB |
subtask1_14.txt | AC | 15 ms | 51456 KB |
subtask1_15.txt | AC | 28 ms | 51456 KB |
subtask1_16.txt | AC | 114 ms | 51456 KB |
subtask1_17.txt | AC | 41 ms | 51456 KB |
subtask1_18.txt | AC | 80 ms | 51456 KB |
subtask1_19.txt | AC | 47 ms | 51456 KB |
subtask1_20.txt | AC | 21 ms | 51456 KB |
subtask1_21.txt | AC | 76 ms | 51456 KB |
subtask1_22.txt | AC | 44 ms | 51456 KB |
subtask1_23.txt | AC | 41 ms | 51456 KB |
subtask1_24.txt | AC | 27 ms | 51456 KB |
subtask1_25.txt | AC | 46 ms | 51456 KB |
subtask1_max1.txt | AC | 297 ms | 51456 KB |
subtask1_max2.txt | AC | 277 ms | 51456 KB |
subtask1_max3.txt | AC | 151 ms | 51456 KB |
subtask1_min1.txt | AC | 15 ms | 51456 KB |
subtask1_min2.txt | AC | 15 ms | 51456 KB |
subtask1_min3.txt | AC | 15 ms | 51456 KB |