//
// Written by Fyodor Menshikov 16.02.2009
// 10:35-11:30
//

import java.io.*;
import java.util.*;

class Main {

   Scanner in;
   PrintWriter out;

   void asserT(boolean e) {
      if (!e) {
         throw new Error();
      }
   }

   long f(int n) {
      long sum = 0;
      int rem = 1;
      while (true) {
         int maxDivisor = n / rem - 1;
         if (maxDivisor <= rem) {
            break;
         }
         sum += maxDivisor - rem;
         rem++;
      }
      return sum;
   }

   void solve() {
      int a = in.nextInt();
      int b = in.nextInt();
      out.println(f(b) - f(a - 1));
   }

   void run() {
      try {
         in = new Scanner(System.in);
         out = new PrintWriter(System.out);
      } catch (Exception e) {
         throw new Error(e);
      }
      try {
         solve();
      } finally {
         out.close();
      }
   }

   public static void main(String args[]) {
      new Main().run();
   }
}

public class Check {

   Scanner in;
   PrintWriter out;

   int f(int n) {
      int count = 0;
      for (int i = 1; i <= n; i++) {
         for (int d = 1; d <= i; d++) {
            if (i / d == i % d) {
               count++;
            }
         }
      }
      return count;
   }

   long f2(int n) {
      return new Main().f(n);
   }

   void solve() {
      for (int i = 0; i < 1000; i++) {
         out.println(i);
         if (f(i) != f2(i)) {
            out.println(f(i) + "!=" + f2(i));
            return;
         }
      }
      out.println("==");
   }

   void run() {
      in = new Scanner(System.in);
      out = new PrintWriter(System.out, true);
      try {
         solve();
      } finally {
         out.close();
      }
   }

   public static void main(String args[]) {
      new Main().run();
   }
}