読者です 読者をやめる 読者になる 読者になる

Tamflexの貯蔵庫

やる気のない備忘録

codeIQ 1630

contest contest-codeIQ language language-c++


abc029にも似た, というかほぼ同じな問題があった.

念の為long long intを用いて解いた.

void solve(ll n)
{
  n++; ll d = 1, t, ans = 0;
  while(n>d)
  {
    t = d;
    d *= 10;
    ans += (n/d)*t+(n%d>t*7?(n%d>=t*8?t:(n%d)%t):0);
  }
  cout << ans << "\n";
}

int main()
{
  ll n;
  while(cin >> n) solve(n);
  return 0;
}