output_description: Print the answer.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      N
attempt: import sys
  
  sys.setrecursionlimit(10**9)
  
  
  # input = sys.stdin.readline    ####
  def int1(x):
      return int(x) - 1
  
  
  def II():
      return int(input())
  
  
  def MI():
      return map(int, input().split())
  
  
  def MI1():
      return map(int1, input().split())
  
  
  def LI():
      return list(map(int, input().split()))
  
  
  def LI1():
      return list(map(int1, input().split()))
  
  
  def LLI(rows_number):
      return [LI() for _ in range(rows_number)]
  
  
  def MS():
      return input().split()
  
  
  def LS():
      return list(input())
  
  
  def LLS(rows_number):
      return [LS() for _ in range(rows_number)]
  
  
  def printlist(lst, k=" "):
      print(k.join(list(map(str, lst))))
  
  
  INF = float("inf")
  # from math import ceil, floor, log2
  # from collections import deque, defaultdict
  # from itertools import combinations as comb, combinations_with_replacement as comb_w, accumulate, product, permutations
  # from heapq import heapify, heappop, heappush
  # import numpy as np    # cumsum
  # from bisect import bisect_left, bisect_right
  
  
  def solve():
      N = II()
  
      ans = 0
      for a in range(1, 1000005):
          for b in range(1, 1000005):
              if a * b > 1000_000:
                  break
              c = N - (a * b)
              if c > 0:
                  ans += 1
      print(ans)
  
  
  if __name__ == "__main__":
      solve()
  
problem_description: Statement
  
  Given is a positive integer N. How many tuples (A,B,C) of positive integers
  satisfy A \times B + C = N?
samples: [{"input": "3", "output": "3\n    \n\nThere are 3 tuples of integers that satisfy A \\times B + C = 3: (A, B, C) =\n(1, 1, 2), (1, 2, 1), (2, 1, 1).\n\n* * *"}, {"input": "100", "output": "473\n    \n\n* * *"}, {"input": "1000000", "output": "13969985"}]