Submission #1673536
Source Code Expand
#include <bits/stdc++.h> #include <string> using namespace std; typedef long long ll; string a_str, b_str; ll dp[20][2][2]; ll dfs(ll keta, bool tight, bool ok) { if(keta == b_str.size()) { if(ok) return 1; else return 0; } if(dp[keta][tight][ok] != -1) return dp[keta][tight][ok]; ll ret = 0; int digit = b_str[keta] - '0'; int lim = tight ? digit : 9; for(int i=0;i<=lim;i++) { ret += dfs(keta+1, tight && i == digit, ok || (i == 4 || i == 9)); } return dp[keta][tight][ok] = ret; } int main() { ll a, b; cin >> a >> b; a--; a_str = to_string(a), b_str = to_string(b); memset(dp, -1, sizeof(dp)); ll high = dfs(0, true, false); memset(dp, -1, sizeof(dp)); b_str = a_str; ll low = dfs(0, true, false); cout << high - low << endl; }
Submission Info
Submission Time | |
---|---|
Task | D - 禁止された数字 |
User | hkr |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 846 Byte |
Status | AC |
Exec Time | 1 ms |
Memory | 256 KB |
Judge Result
Set Name | Sample | Subtask1 | Subtask2 | ||||||
---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 30 / 30 | 70 / 70 | ||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
Sample | subtask0_sample01.txt, subtask0_sample02.txt, subtask0_sample03.txt, subtask0_sample04.txt |
Subtask1 | 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, subtask0_sample01.txt, subtask0_sample02.txt, subtask0_sample03.txt |
Subtask2 | subtask0_sample01.txt, subtask0_sample02.txt, subtask0_sample03.txt, subtask0_sample04.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, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt, subtask2_12.txt, subtask2_13.txt, subtask2_14.txt, subtask2_15.txt, subtask2_16.txt, subtask2_17.txt, subtask2_18.txt, subtask2_19.txt, subtask2_20.txt, subtask2_21.txt, subtask2_22.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
subtask0_sample01.txt | AC | 1 ms | 256 KB |
subtask0_sample02.txt | AC | 1 ms | 256 KB |
subtask0_sample03.txt | AC | 1 ms | 256 KB |
subtask0_sample04.txt | AC | 1 ms | 256 KB |
subtask1_01.txt | AC | 1 ms | 256 KB |
subtask1_02.txt | AC | 1 ms | 256 KB |
subtask1_03.txt | AC | 1 ms | 256 KB |
subtask1_04.txt | AC | 1 ms | 256 KB |
subtask1_05.txt | AC | 1 ms | 256 KB |
subtask1_06.txt | AC | 1 ms | 256 KB |
subtask1_07.txt | AC | 1 ms | 256 KB |
subtask1_08.txt | AC | 1 ms | 256 KB |
subtask1_09.txt | AC | 1 ms | 256 KB |
subtask1_10.txt | AC | 1 ms | 256 KB |
subtask1_11.txt | AC | 1 ms | 256 KB |
subtask1_12.txt | AC | 1 ms | 256 KB |
subtask1_13.txt | AC | 1 ms | 256 KB |
subtask2_01.txt | AC | 1 ms | 256 KB |
subtask2_02.txt | AC | 1 ms | 256 KB |
subtask2_03.txt | AC | 1 ms | 256 KB |
subtask2_04.txt | AC | 1 ms | 256 KB |
subtask2_05.txt | AC | 1 ms | 256 KB |
subtask2_06.txt | AC | 1 ms | 256 KB |
subtask2_07.txt | AC | 1 ms | 256 KB |
subtask2_08.txt | AC | 1 ms | 256 KB |
subtask2_09.txt | AC | 1 ms | 256 KB |
subtask2_10.txt | AC | 1 ms | 256 KB |
subtask2_11.txt | AC | 1 ms | 256 KB |
subtask2_12.txt | AC | 1 ms | 256 KB |
subtask2_13.txt | AC | 1 ms | 256 KB |
subtask2_14.txt | AC | 1 ms | 256 KB |
subtask2_15.txt | AC | 1 ms | 256 KB |
subtask2_16.txt | AC | 1 ms | 256 KB |
subtask2_17.txt | AC | 1 ms | 256 KB |
subtask2_18.txt | AC | 1 ms | 256 KB |
subtask2_19.txt | AC | 1 ms | 256 KB |
subtask2_20.txt | AC | 1 ms | 256 KB |
subtask2_21.txt | AC | 1 ms | 256 KB |
subtask2_22.txt | AC | 1 ms | 256 KB |