Submission #3864750


Source Code Expand

#include <bits/stdc++.h>
#define rep(i, n) for(int i=0;i<(int)(n);++i)
#define rep1(i, n) for(int i=1;i<=(int)(n);++i)
#define irep(i, a, n) for(int i=a;i<(int)(n);++i)
#define rrep(i, n) for(int i=(int)(n)-1;i>=0;--i)
#define rrep1(i, n) for(int i=(int)(n);i>=1;--i)
#define allrep(V, v) for(auto&& V:v)
#define all(x) (x).begin(),(x).end()
typedef long long lint;
const int INF=1<<29;
const double EPS=1e-9;
using namespace std;


lint have_in_digit(int x){
  static lint ans_memo[100]={};
  if(x == 1) return 0;
  if(x == 2) return 2;
  if(ans_memo[x] != 0) return ans_memo[x];
  else{
    ans_memo[x]=have_in_digit(x-1)*8+(lint)pow(10,x-2)*2;
    return ans_memo[x];
  }
}

lint count_49(lint n){
  lint ans=0;
  int max_digits=to_string(n).length();
  for(int digits=max_digits; digits > 0; --digits){
    int digit_num=to_string(n)[max_digits-digits]-'0';
    if(digits == 0) continue;
    else if(digit_num <= 4){
      ans+=have_in_digit(digits)*digit_num;
    }else{
      ans+=have_in_digit(digits)*(digit_num-1)+(lint)pow(10,digits-1);
    }
    if(digit_num == 4 || digit_num == 9){
      ans+=1+n%(lint)pow(10,digits-1);
      break;
    }
  }
  return ans;
}

int main (void)
{
  lint a,b; cin>>a>>b;
  cout << count_49(b)-count_49(a-1) << endl;
  return 0;
}

Submission Info

Submission Time
Task D - 禁止された数字
User icia
Language C++14 (GCC 5.4.1)
Score 100
Code Size 1324 Byte
Status AC
Exec Time 1 ms
Memory 256 KiB

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 1 ms 256 KiB
subtask0_sample02.txt AC 1 ms 256 KiB
subtask0_sample03.txt AC 1 ms 256 KiB
subtask0_sample04.txt AC 1 ms 256 KiB
subtask1_01.txt AC 1 ms 256 KiB
subtask1_02.txt AC 1 ms 256 KiB
subtask1_03.txt AC 1 ms 256 KiB
subtask1_04.txt AC 1 ms 256 KiB
subtask1_05.txt AC 1 ms 256 KiB
subtask1_06.txt AC 1 ms 256 KiB
subtask1_07.txt AC 1 ms 256 KiB
subtask1_08.txt AC 1 ms 256 KiB
subtask1_09.txt AC 1 ms 256 KiB
subtask1_10.txt AC 1 ms 256 KiB
subtask1_11.txt AC 1 ms 256 KiB
subtask1_12.txt AC 1 ms 256 KiB
subtask1_13.txt AC 1 ms 256 KiB
subtask2_01.txt AC 1 ms 256 KiB
subtask2_02.txt AC 1 ms 256 KiB
subtask2_03.txt AC 1 ms 256 KiB
subtask2_04.txt AC 1 ms 256 KiB
subtask2_05.txt AC 1 ms 256 KiB
subtask2_06.txt AC 1 ms 256 KiB
subtask2_07.txt AC 1 ms 256 KiB
subtask2_08.txt AC 1 ms 256 KiB
subtask2_09.txt AC 1 ms 256 KiB
subtask2_10.txt AC 1 ms 256 KiB
subtask2_11.txt AC 1 ms 256 KiB
subtask2_12.txt AC 1 ms 256 KiB
subtask2_13.txt AC 1 ms 256 KiB
subtask2_14.txt AC 1 ms 256 KiB
subtask2_15.txt AC 1 ms 256 KiB
subtask2_16.txt AC 1 ms 256 KiB
subtask2_17.txt AC 1 ms 256 KiB
subtask2_18.txt AC 1 ms 256 KiB
subtask2_19.txt AC 1 ms 256 KiB
subtask2_20.txt AC 1 ms 256 KiB
subtask2_21.txt AC 1 ms 256 KiB
subtask2_22.txt AC 1 ms 256 KiB