Submission #164665


Source Code Expand

#include <iostream>
#include <sstream>
#include <cstdlib>
using namespace std;

typedef long long ll;

ll p[20], f[20];

ll func(const string& s, int k)
{
    if (k>=s.size()) return 0;
    ll res=0;
    for(int i=0;i<s[k]-'0';++i) {
        if (i==4 or i==9)
            res+=p[s.size()-k-1];
        else
            res+=f[s.size()-k-1];
    }
    if (s[k]=='4' or s[k]=='9') {
        string t=s.substr(k+1);
        res+=strtoll(t.c_str(), 0, 10)+1;
        return res;
    }
    res+=func(s, k+1);
    return res;
}
ll func(ll x)
{
    if (x<10) return (x>=4)+(x>=9);

    ostringstream os; os<<x;
    string s=os.str();
    return func(s, 0);
}

int main()
{
    p[0]=1; f[0]=0;
    for(int i=1;i<20;++i) {
        p[i]=10*p[i-1];
        f[i]=2*p[i-1]+8*f[i-1];
    }

    ll a, b; cin>>a>>b;
    cout<<func(b)-func(a-1)<<endl;
}

Submission Info

Submission Time
Task D - 禁止された数字
User hogeover30
Language C++11 (GCC 4.8.1)
Score 100
Code Size 885 Byte
Status AC
Exec Time 63 ms
Memory 972 KB

Judge Result

Set Name Sample Subtask1 Subtask2
Score / Max Score 0 / 0 30 / 30 70 / 70
Status
AC × 4
AC × 16
AC × 39
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 63 ms 900 KB
subtask0_sample02.txt AC 26 ms 912 KB
subtask0_sample03.txt AC 23 ms 904 KB
subtask0_sample04.txt AC 24 ms 900 KB
subtask1_01.txt AC 24 ms 808 KB
subtask1_02.txt AC 23 ms 912 KB
subtask1_03.txt AC 25 ms 912 KB
subtask1_04.txt AC 24 ms 904 KB
subtask1_05.txt AC 25 ms 908 KB
subtask1_06.txt AC 24 ms 908 KB
subtask1_07.txt AC 23 ms 916 KB
subtask1_08.txt AC 25 ms 908 KB
subtask1_09.txt AC 22 ms 812 KB
subtask1_10.txt AC 22 ms 912 KB
subtask1_11.txt AC 23 ms 956 KB
subtask1_12.txt AC 23 ms 908 KB
subtask1_13.txt AC 27 ms 908 KB
subtask2_01.txt AC 24 ms 816 KB
subtask2_02.txt AC 24 ms 912 KB
subtask2_03.txt AC 25 ms 916 KB
subtask2_04.txt AC 25 ms 912 KB
subtask2_05.txt AC 23 ms 908 KB
subtask2_06.txt AC 24 ms 908 KB
subtask2_07.txt AC 23 ms 816 KB
subtask2_08.txt AC 22 ms 908 KB
subtask2_09.txt AC 21 ms 900 KB
subtask2_10.txt AC 23 ms 816 KB
subtask2_11.txt AC 23 ms 912 KB
subtask2_12.txt AC 22 ms 908 KB
subtask2_13.txt AC 24 ms 904 KB
subtask2_14.txt AC 26 ms 896 KB
subtask2_15.txt AC 23 ms 904 KB
subtask2_16.txt AC 23 ms 912 KB
subtask2_17.txt AC 22 ms 908 KB
subtask2_18.txt AC 22 ms 916 KB
subtask2_19.txt AC 26 ms 972 KB
subtask2_20.txt AC 23 ms 908 KB
subtask2_21.txt AC 23 ms 908 KB
subtask2_22.txt AC 24 ms 912 KB