import java.util.*;
import java.util.Collections;

public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = Integer.parseInt(sc.next());
        int d = Integer.parseInt(sc.next());
        
        if(n % (2 * d + 1) == 0) {
            System.out.println((int)(n / (2 * d + 1)));
        }else {
            System.out.println((int)(n / (2 * d + 1)) + 1);
        }
        
        
    }
} import java.util.*; util.* java import java.util.Collections; Collections java.util public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = Integer.parseInt(sc.next());
        int d = Integer.parseInt(sc.next());
        
        if(n % (2 * d + 1) == 0) {
            System.out.println((int)(n / (2 * d + 1)));
        }else {
            System.out.println((int)(n / (2 * d + 1)) + 1);
        }
        
        
    }
} Main public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = Integer.parseInt(sc.next());
        int d = Integer.parseInt(sc.next());
        
        if(n % (2 * d + 1) == 0) {
            System.out.println((int)(n / (2 * d + 1)));
        }else {
            System.out.println((int)(n / (2 * d + 1)) + 1);
        }
        
        
    } main {
        Scanner sc = new Scanner(System.in);
        int n = Integer.parseInt(sc.next());
        int d = Integer.parseInt(sc.next());
        
        if(n % (2 * d + 1) == 0) {
            System.out.println((int)(n / (2 * d + 1)));
        }else {
            System.out.println((int)(n / (2 * d + 1)) + 1);
        }
        
        
    } Scanner sc = new Scanner(System.in); sc new Scanner(System.in) int n = Integer.parseInt(sc.next()); n Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc int d = Integer.parseInt(sc.next()); d Integer.parseInt(sc.next()) Integer.parseInt Integer sc.next() sc.next sc if(n % (2 * d + 1) == 0) {
            System.out.println((int)(n / (2 * d + 1)));
        }else {
            System.out.println((int)(n / (2 * d + 1)) + 1);
        } n % (2 * d + 1) == 0 n % (2 * d + 1) n (2 * d + 1) 2 * d 2 d 1 0 {
            System.out.println((int)(n / (2 * d + 1)));
        } System.out.println((int)(n / (2 * d + 1))) System.out.println System.out System System.out (int)(n / (2 * d + 1)) n (2 * d + 1) 2 * d 2 d 1 {
            System.out.println((int)(n / (2 * d + 1)) + 1);
        } System.out.println((int)(n / (2 * d + 1)) + 1) System.out.println System.out System System.out (int)(n / (2 * d + 1)) + 1 (int)(n / (2 * d + 1)) n (2 * d + 1) 2 * d 2 d 1 1 String[] args args public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = Integer.parseInt(sc.next());
        int d = Integer.parseInt(sc.next());
        
        if(n % (2 * d + 1) == 0) {
            System.out.println((int)(n / (2 * d + 1)));
        }else {
            System.out.println((int)(n / (2 * d + 1)) + 1);
        }
        
        
    }
} public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = Integer.parseInt(sc.next());
        int d = Integer.parseInt(sc.next());
        
        if(n % (2 * d + 1) == 0) {
            System.out.println((int)(n / (2 * d + 1)));
        }else {
            System.out.println((int)(n / (2 * d + 1)) + 1);
        }
        
        
    }
} Main
import java.util.*;
import java.util.Collections;

public class Main {

    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = Integer.parseInt(sc.next());
        int d = Integer.parseInt(sc.next());
        
        if(n % (2 * d + 1) == 0) {
            System.out.println((int)(n / (2 * d + 1)));
        }else {
            System.out.println((int)(n / (2 * d + 1)) + 1);
        }
        
        
    }
}