import java.util.*;

public class Main{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		String point = sc.nextLine();
		
		String[] points = point.split(" ");
		int intN = Integer.parseInt(points[0]);
		int intD = Integer.parseInt(points[1]);
		
		double d2 = intD * 2.0 + 1;
		double observer = Math.ceil(intN / d2);

		System.out.println((int)observer);
	}
} import java.util.*; util.* java public class Main{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		String point = sc.nextLine();
		
		String[] points = point.split(" ");
		int intN = Integer.parseInt(points[0]);
		int intD = Integer.parseInt(points[1]);
		
		double d2 = intD * 2.0 + 1;
		double observer = Math.ceil(intN / d2);

		System.out.println((int)observer);
	}
} Main public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		String point = sc.nextLine();
		
		String[] points = point.split(" ");
		int intN = Integer.parseInt(points[0]);
		int intD = Integer.parseInt(points[1]);
		
		double d2 = intD * 2.0 + 1;
		double observer = Math.ceil(intN / d2);

		System.out.println((int)observer);
	} main {
		Scanner sc = new Scanner(System.in);
		String point = sc.nextLine();
		
		String[] points = point.split(" ");
		int intN = Integer.parseInt(points[0]);
		int intD = Integer.parseInt(points[1]);
		
		double d2 = intD * 2.0 + 1;
		double observer = Math.ceil(intN / d2);

		System.out.println((int)observer);
	} Scanner sc = new Scanner(System.in); sc new Scanner(System.in) String point = sc.nextLine(); point sc.nextLine() sc.nextLine sc String[] points = point.split(" "); points point.split(" ") point.split point " " int intN = Integer.parseInt(points[0]); intN Integer.parseInt(points[0]) Integer.parseInt Integer points[0] points 0 int intD = Integer.parseInt(points[1]); intD Integer.parseInt(points[1]) Integer.parseInt Integer points[1] points 1 double d2 = intD * 2.0 + 1; d2 intD * 2.0 + 1 intD * 2.0 intD 2.0 1 double observer = Math.ceil(intN / d2); observer Math.ceil(intN / d2) Math.ceil Math intN / d2 intN d2 System.out.println((int)observer) System.out.println System.out System System.out (int)observer String[] args args public class Main{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		String point = sc.nextLine();
		
		String[] points = point.split(" ");
		int intN = Integer.parseInt(points[0]);
		int intD = Integer.parseInt(points[1]);
		
		double d2 = intD * 2.0 + 1;
		double observer = Math.ceil(intN / d2);

		System.out.println((int)observer);
	}
} public class Main{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		String point = sc.nextLine();
		
		String[] points = point.split(" ");
		int intN = Integer.parseInt(points[0]);
		int intD = Integer.parseInt(points[1]);
		
		double d2 = intD * 2.0 + 1;
		double observer = Math.ceil(intN / d2);

		System.out.println((int)observer);
	}
} Main
import java.util.*;

public class Main{
	public static void main(String[] args){
		Scanner sc = new Scanner(System.in);
		String point = sc.nextLine();
		
		String[] points = point.split(" ");
		int intN = Integer.parseInt(points[0]);
		int intD = Integer.parseInt(points[1]);
		
		double d2 = intD * 2.0 + 1;
		double observer = Math.ceil(intN / d2);

		System.out.println((int)observer);
	}
}