Submission #1225054


Source Code Expand

#include<iostream>
#include<algorithm>
#include<vector>
#include<cmath>

using namespace std;

unsigned long long a[20];

unsigned long long f(unsigned long long x){
  unsigned long long t = (unsigned long long)10000000000000000000;
  int index = 19;
  int p = 0;
  unsigned long long ret = 0;
  a[0] = 0;

  while(t > 0){
    p = x / t;
    x -= p * t;
    //cout << "loop: x: (ind) :" << x << " ( " << index <<  ")"  << endl;
    if(p == 4){
      if(index == 0) ret++;
      if(index != 0) ret += x+1;
      ret += a[index] * (p);
      return ret;
    }
    if(p == 9){
      if(index == 0) ret++;
      if(index != 0)ret += x+1;
      ret += a[index] * (p-1);
      ret += t; //4の分
      return ret;
    }


    if( p < 4) ret += a[index] * p;
    else if( p < 9) ret += a[index] * (p - 1) + t;

    t/=10;
    index--;
  }
  return ret;
}

int main(void){
  unsigned long long A, B;
  cin >> A >> B;
  A--;

  unsigned long long t = 1;

  a[0] = 0;
  for(int i = 1; i < 20; i++){
    a[i] = a[i-1] * 8 + t * 2;
    t *= 10;
    //cout << i << "," << a[i] << endl;
  }
//   for(int i = 0; i < 500; i++){
//     cout << "f(" << i << ")" <<  f(i) << endl;
//   }


  // cout << "f(" << B << ")" <<  f(B) << endl;
  // cout << "f(" << A << ")" <<  f(A) << endl;
  //
  cout << f(B) - f(A) << endl;

  //[1,10] -> 2 => 2
  //[1,100] -> 2 * 8 + 10 * 2 => 36
  //[1,1000] -> 36 * 8 + 100 * 2
  //左から1桁分ずつ計算.
  //174だと100まで+ 70まで + 4まで
  //
  //
  return 0;
}

Submission Info

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

Compile Error

./Main.cpp:11:46: warning: integer constant is so large that it is unsigned
   unsigned long long t = (unsigned long long)10000000000000000000;
                                              ^

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 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