import java.util.Scanner;
import java.math.BigDecimal;
import java.math.RoundingMode;
public class Main {
    public static void main(String[] args) {
    
      Scanner sc = new Scanner(System.in);
      
      //入力
      double N = sc.nextDouble();//木の本数
      double D = sc.nextDouble();
      
      //1人の監視員が監視できる範囲
      double one = (D*2.0)+1.0;
      
      //監視員が最低何人必要か求める
      double min = N/one;
      
      
       //BigDecimalクラスを利用して小数点以下すべて切り上げ
          //BigDecimal min1 = new BigDecimal(String.valueOf(min));
          //double ans = min.setScale(0, RoundingMode.UP);
       BigDecimal min1 = new BigDecimal(min);  	
       BigDecimal ans = min1.setScale(0, BigDecimal.ROUND_UP);
       System.out.println(ans);
    }
} import java.util.Scanner; Scanner java.util import java.math.BigDecimal; BigDecimal java.math import java.math.RoundingMode; RoundingMode java.math public class Main {
    public static void main(String[] args) {
    
      Scanner sc = new Scanner(System.in);
      
      //入力
      double N = sc.nextDouble();//木の本数
      double D = sc.nextDouble();
      
      //1人の監視員が監視できる範囲
      double one = (D*2.0)+1.0;
      
      //監視員が最低何人必要か求める
      double min = N/one;
      
      
       //BigDecimalクラスを利用して小数点以下すべて切り上げ
          //BigDecimal min1 = new BigDecimal(String.valueOf(min));
          //double ans = min.setScale(0, RoundingMode.UP);
       BigDecimal min1 = new BigDecimal(min);  	
       BigDecimal ans = min1.setScale(0, BigDecimal.ROUND_UP);
       System.out.println(ans);
    }
} Main public static void main(String[] args) {
    
      Scanner sc = new Scanner(System.in);
      
      //入力
      double N = sc.nextDouble();//木の本数
      double D = sc.nextDouble();
      
      //1人の監視員が監視できる範囲
      double one = (D*2.0)+1.0;
      
      //監視員が最低何人必要か求める
      double min = N/one;
      
      
       //BigDecimalクラスを利用して小数点以下すべて切り上げ
          //BigDecimal min1 = new BigDecimal(String.valueOf(min));
          //double ans = min.setScale(0, RoundingMode.UP);
       BigDecimal min1 = new BigDecimal(min);  	
       BigDecimal ans = min1.setScale(0, BigDecimal.ROUND_UP);
       System.out.println(ans);
    } main {
    
      Scanner sc = new Scanner(System.in);
      
      //入力
      double N = sc.nextDouble();//木の本数
      double D = sc.nextDouble();
      
      //1人の監視員が監視できる範囲
      double one = (D*2.0)+1.0;
      
      //監視員が最低何人必要か求める
      double min = N/one;
      
      
       //BigDecimalクラスを利用して小数点以下すべて切り上げ
          //BigDecimal min1 = new BigDecimal(String.valueOf(min));
          //double ans = min.setScale(0, RoundingMode.UP);
       BigDecimal min1 = new BigDecimal(min);  	
       BigDecimal ans = min1.setScale(0, BigDecimal.ROUND_UP);
       System.out.println(ans);
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) double N = sc.nextDouble(); N sc.nextDouble() sc.nextDouble sc double D = sc.nextDouble(); D sc.nextDouble() sc.nextDouble sc double one = (D*2.0)+1.0; one (D*2.0)+1.0 (D*2.0) D 2.0 1.0 double min = N/one; min N/one N one BigDecimal min1 = new BigDecimal(min); min1 new BigDecimal(min) BigDecimal ans = min1.setScale(0, BigDecimal.ROUND_UP); ans min1.setScale(0, BigDecimal.ROUND_UP) min1.setScale min1 0 BigDecimal.ROUND_UP BigDecimal BigDecimal.ROUND_UP System.out.println(ans) System.out.println System.out System System.out ans String[] args args public class Main {
    public static void main(String[] args) {
    
      Scanner sc = new Scanner(System.in);
      
      //入力
      double N = sc.nextDouble();//木の本数
      double D = sc.nextDouble();
      
      //1人の監視員が監視できる範囲
      double one = (D*2.0)+1.0;
      
      //監視員が最低何人必要か求める
      double min = N/one;
      
      
       //BigDecimalクラスを利用して小数点以下すべて切り上げ
          //BigDecimal min1 = new BigDecimal(String.valueOf(min));
          //double ans = min.setScale(0, RoundingMode.UP);
       BigDecimal min1 = new BigDecimal(min);  	
       BigDecimal ans = min1.setScale(0, BigDecimal.ROUND_UP);
       System.out.println(ans);
    }
} public class Main {
    public static void main(String[] args) {
    
      Scanner sc = new Scanner(System.in);
      
      //入力
      double N = sc.nextDouble();//木の本数
      double D = sc.nextDouble();
      
      //1人の監視員が監視できる範囲
      double one = (D*2.0)+1.0;
      
      //監視員が最低何人必要か求める
      double min = N/one;
      
      
       //BigDecimalクラスを利用して小数点以下すべて切り上げ
          //BigDecimal min1 = new BigDecimal(String.valueOf(min));
          //double ans = min.setScale(0, RoundingMode.UP);
       BigDecimal min1 = new BigDecimal(min);  	
       BigDecimal ans = min1.setScale(0, BigDecimal.ROUND_UP);
       System.out.println(ans);
    }
} Main
import java.util.Scanner;
import java.math.BigDecimal;
import java.math.RoundingMode;
public class Main {
    public static void main(String[] args) {
    
      Scanner sc = new Scanner(System.in);
      
      //入力
      double N = sc.nextDouble();//木の本数
      double D = sc.nextDouble();
      
      //1人の監視員が監視できる範囲
      double one = (D*2.0)+1.0;
      
      //監視員が最低何人必要か求める
      double min = N/one;
      
      
       //BigDecimalクラスを利用して小数点以下すべて切り上げ
          //BigDecimal min1 = new BigDecimal(String.valueOf(min));
          //double ans = min.setScale(0, RoundingMode.UP);
       BigDecimal min1 = new BigDecimal(min);  	
       BigDecimal ans = min1.setScale(0, BigDecimal.ROUND_UP);
       System.out.println(ans);
    }
}