Submission #1443190
Source Code Expand
#include <algorithm> #include <cstdio> #include <iostream> #include <map> #include <cmath> #include <queue> #include <set> #include <sstream> #include <stack> #include <string> #include <vector> #include <stdlib.h> #include <stdio.h> #include <bitset> using namespace std; #define FOR(I,A,B) for(int I = (A); I < (B); ++I) typedef long long ll; ll dp[30][2][2]; // 調べた桁数、小さいことが確定しているか、4or9があるか ll calc(string s) { int len = s.length(); FOR(i,0,len+1) FOR(j,0,2) FOR(k,0,2) dp[i][j][k] = 0; dp[0][0][0] = 1; FOR(i,0,len) FOR(j,0,2) FOR(k,0,2) { int lim = j ? 9 : s[i] - '0'; FOR(d,0,lim+1) { dp[i+1][j||d<lim][k||d==4||d==9] += dp[i][j][k]; } } ll ret = 0; FOR(j,0,2) { ret += dp[len][j][1]; } return ret - 1; // 0もカウントされるので-1 } int main() { ll A, B; cin>>A>>B; cout << calc(to_string(B)) - calc(to_string(A-1)) << endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - 禁止された数字 |
User | nenuon |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 995 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 |