import java.util.Scanner;
 
public class Main {
 
	public static final MyScanner in = new MyScanner();
	public static int[][][][] memo;
 
	public static void main(String[] args) {
 
		int N = in.nextInt();
		int answer = (N/2) + (N%2);
		System.out.println(answer);

	}
 

    public static long comb(int n, int r){
        long num = 1;
        for(int i = 1; i <= r; i++){
            num = num * (n - i + 1) / i;
        }
        return num;
    }
 
	public static class MyScanner{
		Scanner sc = new Scanner(System.in);
		String nextLine() {return sc.nextLine();}
		String next() {return sc.next();}
		int nextInt() {return Integer.valueOf(sc.next());}
		long nextLong() { return Long.valueOf(sc.next());}
	}

} import java.util.Scanner; Scanner java.util public class Main {
 
	public static final MyScanner in = new MyScanner();
	public static int[][][][] memo;
 
	public static void main(String[] args) {
 
		int N = in.nextInt();
		int answer = (N/2) + (N%2);
		System.out.println(answer);

	}
 

    public static long comb(int n, int r){
        long num = 1;
        for(int i = 1; i <= r; i++){
            num = num * (n - i + 1) / i;
        }
        return num;
    }
 
	public static class MyScanner{
		Scanner sc = new Scanner(System.in);
		String nextLine() {return sc.nextLine();}
		String next() {return sc.next();}
		int nextInt() {return Integer.valueOf(sc.next());}
		long nextLong() { return Long.valueOf(sc.next());}
	}

} Main public static final MyScanner in = new MyScanner(); in new MyScanner() public static int[][][][] memo; memo public static void main(String[] args) {
 
		int N = in.nextInt();
		int answer = (N/2) + (N%2);
		System.out.println(answer);

	} main {
 
		int N = in.nextInt();
		int answer = (N/2) + (N%2);
		System.out.println(answer);

	} int N = in.nextInt(); N in.nextInt() in.nextInt in int answer = (N/2) + (N%2); answer (N/2) + (N%2) (N/2) N 2 (N%2) N 2 System.out.println(answer) System.out.println System.out System System.out answer String[] args args public static long comb(int n, int r){
        long num = 1;
        for(int i = 1; i <= r; i++){
            num = num * (n - i + 1) / i;
        }
        return num;
    } comb {
        long num = 1;
        for(int i = 1; i <= r; i++){
            num = num * (n - i + 1) / i;
        }
        return num;
    } long num = 1; num 1 for(int i = 1; i <= r; i++){
            num = num * (n - i + 1) / i;
        } int i = 1; int i = 1; i 1 i <= r i r i++ i++ i {
            num = num * (n - i + 1) / i;
        } {
            num = num * (n - i + 1) / i;
        } num = num * (n - i + 1) / i num num * (n - i + 1) / i num * (n - i + 1) num (n - i + 1) n - i n i 1 i return num; num int n n int r r public static class MyScanner{
		Scanner sc = new Scanner(System.in);
		String nextLine() {return sc.nextLine();}
		String next() {return sc.next();}
		int nextInt() {return Integer.valueOf(sc.next());}
		long nextLong() { return Long.valueOf(sc.next());}
	} MyScanner Scanner sc = new Scanner(System.in); sc new Scanner(System.in) String nextLine() {return sc.nextLine();} nextLine {return sc.nextLine();} return sc.nextLine(); sc.nextLine() sc.nextLine sc String next() {return sc.next();} next {return sc.next();} return sc.next(); sc.next() sc.next sc int nextInt() {return Integer.valueOf(sc.next());} nextInt {return Integer.valueOf(sc.next());} return Integer.valueOf(sc.next()); Integer.valueOf(sc.next()) Integer.valueOf Integer sc.next() sc.next sc long nextLong() { return Long.valueOf(sc.next());} nextLong { return Long.valueOf(sc.next());} return Long.valueOf(sc.next()); Long.valueOf(sc.next()) Long.valueOf Long sc.next() sc.next sc public class Main {
 
	public static final MyScanner in = new MyScanner();
	public static int[][][][] memo;
 
	public static void main(String[] args) {
 
		int N = in.nextInt();
		int answer = (N/2) + (N%2);
		System.out.println(answer);

	}
 

    public static long comb(int n, int r){
        long num = 1;
        for(int i = 1; i <= r; i++){
            num = num * (n - i + 1) / i;
        }
        return num;
    }
 
	public static class MyScanner{
		Scanner sc = new Scanner(System.in);
		String nextLine() {return sc.nextLine();}
		String next() {return sc.next();}
		int nextInt() {return Integer.valueOf(sc.next());}
		long nextLong() { return Long.valueOf(sc.next());}
	}

} public class Main {
 
	public static final MyScanner in = new MyScanner();
	public static int[][][][] memo;
 
	public static void main(String[] args) {
 
		int N = in.nextInt();
		int answer = (N/2) + (N%2);
		System.out.println(answer);

	}
 

    public static long comb(int n, int r){
        long num = 1;
        for(int i = 1; i <= r; i++){
            num = num * (n - i + 1) / i;
        }
        return num;
    }
 
	public static class MyScanner{
		Scanner sc = new Scanner(System.in);
		String nextLine() {return sc.nextLine();}
		String next() {return sc.next();}
		int nextInt() {return Integer.valueOf(sc.next());}
		long nextLong() { return Long.valueOf(sc.next());}
	}

} Main
import java.util.Scanner;
 
public class Main {
 
	public static final MyScanner in = new MyScanner();
	public static int[][][][] memo;
 
	public static void main(String[] args) {
 
		int N = in.nextInt();
		int answer = (N/2) + (N%2);
		System.out.println(answer);

	}
 

    public static long comb(int n, int r){
        long num = 1;
        for(int i = 1; i <= r; i++){
            num = num * (n - i + 1) / i;
        }
        return num;
    }
 
	public static class MyScanner{
		Scanner sc = new Scanner(System.in);
		String nextLine() {return sc.nextLine();}
		String next() {return sc.next();}
		int nextInt() {return Integer.valueOf(sc.next());}
		long nextLong() { return Long.valueOf(sc.next());}
	}

}