Problem:
 Score : 100 points    Problem Statement Takahashi wants to print a document with N pages double-sided, where two pages of data can be printed on one sheet of paper.  At least how many sheets of paper does he need?      Constraints  N is an integer.  1 \leq N \leq 100         Input Input is given from Standard Input in the following format:  N       Output Print the answer.        Sample Input 1 5      Sample Output 1 3  By printing the 1 -st, 2 -nd pages on the 1 -st sheet, 3 -rd and 4 -th pages on the 2 -nd sheet, and 5 -th page on the 3 -rd sheet, we can print all the data on 3 sheets of paper.       Sample Input 2 2      Sample Output 2 1       Sample Input 3 100      Sample Output 3 50

Solution (Python):
n=int(input())
n = -(-n // 2)
print(n)

Solution (Python):
import sys,math
N = int(input())
print(math.ceil(N/2))

Solution (Python):
N = int(input())
import math
print(math.ceil(N /2))

Solution (Python):
N = input()
print(-(-int(N) // 2))

Solution (Python):
import math

N = int(input())

p = math.ceil(N/2)

print(int(p))

Solution (Python):
tmp = input()
tmp = int(tmp)

if tmp % 2 ==0:
  print(int(tmp/2))
else:
  print(int((tmp/2)+1))

Solution (Python):
N = int(input())
check = N % 2
if check == 0:
  answer = N // 2
else:
  answer = (N + 1) // 2
print(answer)

Solution (Python):

N = int(input())
print(N // 2 + N % 2)

Solution (Python):
n = int(input())

if n%2 == 0:
    print(n//2)
else:
    print(n//2+1)

Solution (Python):
import math
n = int(input())
print(math.floor((n+1)/2))

Solution (Python):
N = int(input())

if N % 2 == 0 :
    print(int(N/2))
else:
    print(N//2+1)

Solution (Python):
N = int(input())

if N % 2 == 0:
    print(N//2)
else:
    print(N//2+1)

Solution (Python):
N = int(input())
n = N / 2

if (N % 2 != 0):
 n += 1

print (int(n));

Solution (Python):
from collections import *
from itertools import *
from bisect import *
from heapq import *
import copy







N=int(input())
print(N//2+N%2)

Solution (Python):
import math

n = int(input())
print(math.ceil(n/2))

Solution (Python):
import math

n = int(input())
print(math.ceil(n/2))

Solution (Python):
n = int(input())
print((n+1)//2)

Solution (Python):
N = int(input())
a = N//2
A = N % 2
print(a+A)

Solution (Python):
n = int(input())
 
if n%2 == 0:
  print(n//2)
else:
  print(n//2 + 1)

Solution (Python):
import math
N = int(input())
print(math.ceil(N/2))

Solution (Python):
import sys
read = sys.stdin.readline


def read_ints():
    return list(map(int, read().split()))


def read_a_int():
    return int(read())


def read_matrix(H):
    '''
    H is number of rows
    '''
    return [list(map(int, read().split())) for _ in range(H)]


def read_map(H):
    '''
    H is number of rows
    文字列で与えられた盤面を読み取る用
    '''
    return [read()[:-1] for _ in range(H)]


def read_tuple(H):
    '''
    H is number of rows
    '''
    ret = []
    for _ in range(H):
        ret.append(tuple(map(int, read().split())))
    return ret


def read_col(H, n_cols):
    '''
    H is number of rows
    n_cols is number of cols

    A列、B列が与えられるようなとき
    '''
    ret = [[] for _ in range(n_cols)]
    for _ in range(H):
        tmp = list(map(int, read().split()))
        for col in range(n_cols):
            ret[col].append(tmp[col])

    return ret


N = read_a_int()
print((N + 1) // 2)

Solution (Python):

n = int(input())

if n % 2 == 0:
    print(int(n/2))
else:
    print(int(n/2) + 1)

Solution (Python):
import math

n = int(input().strip())
print(math.ceil(n/2))

Solution (Python):
import math

N = int(input())
num = math.ceil(N/2)
print(num)

Solution (Python):
print((int(input())+1)//2)

Solution (Python):
n = int(input())
if n % 2:
    print(n // 2 + 1)
else:
    print(n // 2)

Solution (Python):
N=int(input())

if(N%2==0):
  print(int(N/2))
else:
  print(int(N/2)+1)

Solution (Python):
N=int(input())
print((N+1)//2)

Solution (Python):
n=int(input())
print(n-n//2)

Solution (Python):
N=int(input())

if N%2==0:
    print(int(N/2))
else :
    print(int(N/2)+1)

Solution (Python):
import math

N = int(input())



print(math.ceil(N/2))

Solution (Python):
import math

N = int(input())
print(math.ceil(N/2))

Solution (Python):
n  = int(input())
if n % 2 == 0:
    ans = n//2
else :
    ans = n//2+1
print(ans)

Solution (Python):

N = int(input())
num = N//2
nume = (N+1)//2
if N%2==0:
    print(num)
else:
    print(nume)

Solution (Python):
n = int(input())
if n % 2 == 0:
    print(int(n/2))
else:
    print(n//2 + 1)

Solution (Python):
s = input().strip()
s = int(s)

if s%2 == 0:
    print(int(s/2))
else:
    print(int(s/2)+1)

Solution (Python):
n = int(input())
if n%2==0:
    print(n//2)
else:
    print(n//2+1)

Solution (Python):
import math
n = int(input())

print(math.ceil(n/2))

Solution (Python):
N = int(input())
print(-(-N//2))

Solution (Python):
import math

N = int(input())
print(math.ceil(N/2))

Solution (Python):
a = int(input())
b = int(a / 2)
if (a % 2 !=0):
    b+=1
print(b)

Solution (Python):
N = int(input())
if N%2 == 1:
    print(N//2+1)
else:
    print(N//2)

Solution (Python):
import math
N = int(input())
print(math.ceil(N/2))

Solution (Python):
import sys
read = sys.stdin.read
readline = sys.stdin.readline
readlines = sys.stdin.readlines

n = int(readline())
print(n//2+n%2)

Solution (Python):
n=int(input())
if n%2==0:
    print(n//2)
else:
    print(n//2+1)

Solution (Python):
import math
n = int(input())
print(math.ceil(n/2))

Solution (Python):



'''
A=[]
B=[]
for i in range():
    a, b = map(int, input().split())
    A.append(a)a
    B.append(b)'''


    
def main():
    import sys
    input = sys.stdin.readline
    

    n = int(input())
    if n % 2 == 0:
        print(int(n/2))
    else:
        print(int(n//2+1))





if __name__ == "__main__":
    main()

Solution (Python):
import math
from sys import stdin


def get_result(data):
    N = data[0]
    return math.ceil(N / 2.0)

if __name__ == '__main__':
    data = list(map(int, stdin.readline().split(' ')))
    result = get_result(data)
    print(result)

Solution (Python):
n = int(input())

if n % 2 == 1:
	print((n+1) // 2)
else:
	print((n) // 2)

Solution (Python):
n = int(input())
if n % 2 == 0:
  print(n // 2)
else:
  print((n + 1) // 2)

Solution (Python):
import math
n = int(input())
print(math.ceil(n/2))

Solution (Python):
number = int(input())
division = number // 2
remainder = number % 2

if remainder == 0:
    print(division)
else:
    print(division + 1)

Solution (Python):


n=int(input())
if n%2==0:
    print(n//2)
else:
    print(n//2+1)

Solution (Python):
from bisect import bisect_right, bisect_left
from collections import Counter, deque
from functools import lru_cache, reduce
from heapq import heappop, heappush
from itertools import groupby, permutations, combinations, product
from sys import stdin, stderr





def gcd(x, y):
    return x if y == 0 else gcd(y, x % y)





def exgcd(x, y):
    if y == 0:
        return 1, 0
    a, b = exgcd(y, x % y)
    return b, a - (x // y) * b



def lcm(x, y):
    m = gcd(x, y)
    return (x // m) * (y // m)


def main():
    N = int(input())
    
    return N // 2 if N % 2 == 0 else N // 2 + 1


if __name__ == "__main__":
    print(main())

Solution (Python):
n = int(input())
print(n//2+ n%2)

Solution (Python):
import math
pageNum = int(input())
print(int(math.ceil(pageNum/2)))

Solution (Python):
N = int(input()) 
if N % 2 == 1:
    print((N//2) + 1)
else:
    print(N//2)

Solution (Python):

N = int(input())
print((N + 1) // 2)

Solution (Python):
n = int(input())
print((n+1)//2)

Solution (Python):
N = input()
N = int(N)
p = N // 2
q = N % 2
if q==0:
    p=p
    print(p)
else:
    p = p+1
    print(p)

Solution (Python):
import math
N = int(input())
print (math.ceil(N/2))

Solution (Python):
a = int(input())
if a % 2:
  b = (a + 1) / 2
else:
  b = a / 2
print(int(b))

Solution (Python):
n = input()
print (n + 1) / 2

Solution (Python):
import math

print(math.ceil(int(input())/2))

Solution (Python):
N = int(input())
if(N%2 == 0):
    print(int(N/2))
else:
    print(int((N-1)/2+1))

Solution (Python):
print(-((-int(input()))//2))

Solution (Python):
import math

num_pages = int(input())
num_sheets = num_pages/2
print(math.ceil(num_sheets))

Solution (Python):
N = input('')

q =int(N) // 2
mod = int(N) % 2

if mod == 0:
    print(q)
else:
    a = q + 1
    print(a)

Solution (Python):
N = int(input())

if N % 2 == 0:
    print(int(N/2))
else:
    print(N//2+1)

Solution (Python):
N = int(input())
ans = N // 2
if N % 2 == 1:
    ans += 1
print(ans)

Solution (Python):
N=int(input())

div = N % 2

if div==0:
    print(round(N / 2))
else :
    print(round(N // 2 + 1))

Solution (Python):
N = int(input())
if N % 2 == 0:
    answer = N /2
else:
    answer = (N + 1) / 2

print(int(answer))

Solution (Python):
q, mod = divmod(int(input()), 2)
if mod == 1:
  q+=1
print(q)

Solution (Python):
import math
N=int(input())
a=N/2
print(math.ceil(a))

Solution (Python):
a=input()
a=int(a)
b=a//2
if a%2==1:
  b+=1
  print(b)
else:
  print(b)

Solution (Python):
from math import ceil

N = int(input())
print(ceil(N / 2))

Solution (Python):
N = int(input())
print(N // 2 if N % 2 == 0 else N // 2 + 1)

Solution (Python):
a = int(input())
if a % 2 == 0:
  c = 0
else:
  c = 1
print(int((a//2)+c))

Solution (Python):
N=int(input())

if N%2==0:
    print(int(N/2))
else:
    print(int(N/2)+1)

Solution (Python):
n=int(input())

o=n//2

if n%2==1:
  o+=1

print(o)

Solution (Python):
n = int(input())
if n//2*2 == n:
  print(n//2)
else:
  print(n//2+1)

Solution (Python):
N = int(input())

if N % 2 == 0:
    print(round(N / 2))
else:
    print(round(N // 2 + 1))

Solution (Python):
i = int(input())

if i % 2 == 0:
  print(int(i / 2))
elif i % 2 != 0:
  print(int((i / 2) + 0.5))

Solution (Python):
import numpy as np

N=int(input())

m = N%2 
if (m == 0):
    print(int(N/2))
else:
    print(int(N/2+1))

Solution (Python):
n=int(input())
 
if n%2==0:
  print(n//2)
else:
  print(n//2+1)

Solution (Python):
print(int((int(input()) + 1) / 2))

Solution (Python):
import math

n = int(input())
result = 0

if n % 2 == 0:
    result = int(n/2)
else:
    result = math.ceil(n/2)

print(result)

Solution (Python):
n = int(input())
sho = n//2
mod = n%2
if mod > 0:
    ans = sho + 1
else:
    ans = sho

print(ans)

Solution (Python):
a = int(input())
if a % 2 == 0:
    print(a // 2)
else:
    print(a // 2 + 1)

Solution (Python):
def main():
    N = input()
    N = int(N)
    if N % 2 == 0 :
        print (int(N/2))
    else :
        print (int((N+1)/2))

if __name__ == '__main__':
    main()

Solution (Python):
n = int(input())
if n % 2 == 0:
    print(n // 2)
else:
    print(n // 2 + 1)

Solution (Python):
N=int(input())

if N%2==0:
    print(int(N/2))

elif N%2==1:
    print(int(int(N/2)+1))

Solution (Python):
a=int(input())
print(str(a%2+int(a/2)))

Solution (Python):
import math
N = input()
N = math.ceil(float(N))
if N % 2 != 0:
    ans = (N // 2)+(N % 2)
else:
    ans = N // 2
print(ans)

Solution (Python):
import math

def main():
    n = int(input())

    print(math.ceil(n/2))


if __name__ == '__main__':
    main()

Solution (Python):
N=int(input())

print(int(N/2)+N%2)

Solution (Python):
n=int(input())
if n%2 == 0:
    print(n//2)
else:
    print(n//2+1)

Solution (Python):
n = int(input())
if n % 2 == 0:
  print(n // 2)
else:
  print(n // 2 + 1)

Solution (Python):
N = int(input())
if N%2 == 0:
  print(N//2)
else:
  print(N//2 + 1)

Solution (Python):
N = int(input())
print((N+1)//2)

Solution (Python):
def need_paper_for_duplex_printing(doc_page_number):
    return (doc_page_number // 2) + (doc_page_number % 2)


if __name__ == '__main__':
    print(need_paper_for_duplex_printing(int(input())))

Solution (Python):
N = int(input())
import math

print(math.ceil(N / 2))

Solution (Python):
N = int(input())
print((N+1)//2)

Solution (Python):
import math;print(max(math.ceil(float(input())/2),1))

Solution (Python):
N=int(input())
print((N+1)//2)

Solution (Python):

def I(): return int(input())
def MI(): return map(int, input().split())
def LI(): return list(map(int, input().split()))

def main():
    mod=10**9+7
    N=I()
    print((N+1)//2)

main()

Solution (Python):

a=int(input())
b=int((a+1)/2)
print(b)

Solution (Python):
import sys
import math

N = int(sys.stdin.readline().strip())
print(math.ceil(N/2))

Solution (Python):
N = int(input())

if N%2==0:
    print(int(N/2))
else:
    print(int((N+1)/2))

Solution (Python):
import math

N = float(input())
print(math.ceil(N/2))

Solution (Python):
import numpy as np
N = int(input())
print(int(np.ceil(N/2)))

Solution (Python):
import math
n=int(input())
print(math.ceil(n/2))

Solution (Python):



N=int(input())

if N%2==0:
  print(int(N/2))
else:
  print(int((N+1)/2))

Solution (Python):
n=int(input())
if n%2==0:
    print(int(n/2))
else:
    print(int(n/2+1))

Solution (Python):
import math

n = int(input())
print(math.ceil(n / 2))

Solution (Python):

import math

N = int(input())

print(math.ceil(N/2))

Solution (Python):
n=int(input())
print(-(-n//2))

Solution (Python):
n = int(input())

if n % 2 == 0:
    print(n//2)
else:
    print(n//2 + 1)

Solution (Python):
n = int(input())

q, mod = divmod(n, 2)
if mod == 0:
    print (q)
else:
    print (q + 1)

Solution (Python):
N=int(input())
S=N%2
if S==0:
  print(N//2)
else:
  print(N//2+1)

Solution (Python):
N = int(input())
if N%2 == 0:
    print(int(N/2))
else:
    print(int(N/2)+1)

Solution (Python):

from itertools import product, permutations, combinations
from bisect import bisect_right,bisect_left
INF = float('inf')

N=int(input())
if N % 2 == 0:
    print(N//2)
else:
    print(N//2 + 1)

Solution (Python):
n = int(input())
print((n+1)//2)

Solution (Python):
N=int(input())

print((N+1)//2)

Solution (Python):
N = input()

print(int(N)//2 + int(N)%2)

Solution (Python):

n = (int)(input())

if n % 2 != 0:
    print((int)(n / 2) + 1)
else:
    print((int)(n / 2))

Solution (Python):
N = int(input())

if N%2 ==0:
    print(N//2)
else:
    print(N//2 + 1)

Solution (Python):
N = int(input())
if N%2 == 0:
  ans = int(N/2)
else:
  ans = int(N/2)+1
  
print(ans)

Solution (Python):
import math
N = int(input())
y = math.ceil(N / 2)
print(y)

Solution (Python):
n=int(input())
print((n+1)//2)

Solution (Python):
import math
print(math.ceil(int(input())/2))

Solution (Python):
N=input()
N=int(N)

ans=0


if N>=1 and N<=100 :
  ans =N/2
  if N%2==1:
    ans = ans+1
    
print(int(ans))

Solution (Python):
import math
n = int(input())
print(math.ceil(n/2))

Solution (Python):
N = input()

def num_of_paper(N: int):
    if int(N%2) == 1:
        return int(N/2) + 1
    return int(N/2)

print(num_of_paper(int(N)))

Solution (Python):
import math
n = int(input())
print(math.ceil(n/2))

Solution (Python):
N = int(input())
print(int(N/2)) if N%2==0 else print(N//2+1)

Solution (Python):
import math
a = int(input())
b = math.ceil(a/2)
print(b)

Solution (Python):
import math
n = int(input())
ret = math.ceil(n * 0.5)
print("{}".format(ret))

Solution (Python):
import math

N = int(input())
print(math.ceil(N/2))

Solution (Python):
n = int(input())
if n % 2 == 1:
    print(n // 2 + 1)
else:
    print(n // 2)

Solution (Python):
N = int(input())
ans = N//2 if N%2==0 else N//2 + 1
print(ans)

Solution (Python):
N = int(input())

if N % 2 == 0:
    print(N//2)
else:
    print(N//2+1)

Solution (Python):
import math
N =int(input())

print(math.ceil(N/2))

Solution (Python):
n = int(input())
print((n+1)//2)

Solution (Python):
N=int(input())
print((N+1)//2)

Solution (Python):
num = int(input())

if num % 2 == 1:
    print(num//2 +1)
else:
    print(num//2)

Solution (Python):
N = int(input())
print(sum(divmod(N, 2)))

Solution (Python):
print((int(input())+1)//2)

Solution (Python):
n=int(input())
ans=(n//2)
if (n%2!=0):
    ans+=1
print(ans)

Solution (Python):

from collections import deque, defaultdict
import bisect
from math import factorial

def main():
    N = int(input())
    

    if N % 2 == 1:
        N += 1
    print(N // 2)


if __name__ == '__main__':
    main()

Solution (Python):
import math

F = int(input())
print(math.ceil(F / 2))

Solution (Python):
N = int(input())

def main():
    if N%2 == 0:
        print(int(N/2))
    
    else:
        print(int(N/2)+1)

                
if __name__ == "__main__":
    main()

Solution (Python):
N = int(input())
if N%2==0:
  print('{:.0f}'.format(N/2))
else:
  print('{:.0f}'.format((N+1)/2))

Solution (Python):
import math
N = int(input())
print(math.ceil(N/2))

Solution (Python):
n = int(input())

print((n+1)//2)

Solution (Python):
N = int(input())
c = N // 2
d = N % 2
print(c+d)

Solution (Python):
num = int(input())
if 1 == num%2:
    print(round((num+1)/2))
else:
    print(round(num/2))

Solution (Python):
n=int(input())
if n%2==1:
    print(n//2+1)
else:
    print(n//2)

Solution (Python):
import math
N = int(input())

n = N / 2

print(math.ceil(n))

Solution (Python):
n = int(input())
if n % 2 == 0:
    n = round(n/2)
else:
    n = round((n + 1) / 2)
print(n)

Solution (Python):
import sys, math

n = int(sys.stdin.readline().strip())
print(math.ceil(n / 2))

Solution (Python):
import math

N = int(input())


def main():
    return math.ceil(N / 2)


print(main())

Solution (Python):
import math
print(math.ceil(int(input())/2))

Solution (Python):
A = int(input())
if A%2==1:
    A = (A/2)+0.5
else:
    A =A/2
print(int(A))

Solution (Python):
import math
n = int(input())
print(math.ceil(n/2))

Solution (Python):
import math
N = int(input())
print(math.ceil(N / 2))

Solution (Python):
input = int(input())
page = int(input / 2) + input%2
print("{}".format(page))

Solution (Python):
import math

N = int(input())

print(math.ceil(N/2))

Solution (Python):
i=int(input())
if i%2<0.5:
    print(i//2)
else:
    print(i//2+1)

Solution (Python):
import sys
def input(): return sys.stdin.readline().rstrip()

def main():
    N = int(input())
    print((N + 1) // 2)

if __name__ == '__main__':
    main()

Solution (Python):
N=int(input())

if N%2==1:
	print(N//2+1)
  
else:
  print(int(N/2))

Solution (Python):
N = int(input())
answer = int(N / 2)
if N % 2 == 1:
  print(answer + 1)
else:
  print(answer)

Solution (Python):
print((int(input())+1)//2)

Solution (Python):
import math
print(math.ceil(int(input())/2))

Solution (Python):

import math

def solve():
    N = int(input())
    print(math.ceil(N/2))

if __name__ == "__main__":
    solve()

Solution (Python):
N = int(input())
print(int((N+1)/2))

Solution (Python):
n = int(input())

def calc(n):
    if n % 2 != 0:
        return int(n / 2) + 1
    else:
        return int(n / 2)

print(calc(n))

Solution (Python):
import math
N = int(input())
a = math.ceil(N/2)
print(a)

Solution (Python):
import math
N=int(input())
print('%d' % math.floor((N+1)/2))

Solution (Python):



def main():
    n = int(input())
    
    if n % 2 == 0:
        page = n // 2
        
    else:
        page = n // 2 + 1
        
    print(page)

    return 0


if __name__ == '__main__':
    main()

Solution (Python):
import math
N = int(input())
N=N/2
print(math.ceil(N))

Solution (Python):
N = input()
N = int(N)

import math

if N%2==0:
    print(int(N/2))
else:
    print(math.ceil(N/2))

Solution (Python):
import math
n = int(input())
print(math.ceil(n / 2))

Solution (Python):
N = int(input())

print(N // 2 + N %2)

Solution (Python):
import math
print(math.ceil(int(input())/2))

Solution (Python):
ans = 0
N = int(input())

if(N%2):
    ans = N//2 +1
else:
    ans = N//2
print(ans)

Solution (Python):
a = int(input())
b = 0
while a > 0:
  a -= 2
  b += 1
  if a == 1:
    print(b + 1)
    break
else:
  print(b)

Solution (Python):
import math

a = int(input())
print(math.ceil(a/2))

Solution (Python):
num = int(input())
if num%2 == 0:
    print(num//2)
else:
    print(num//2+1)

Solution (Python):





import sys

ipti = sys.stdin.readline
MOD = 10 ** 9 + 7
INF = float('INF')
sys.setrecursionlimit(10 ** 5)

def main():
    n = int(input())
    print(((n-1)//2+1))

if __name__ == '__main__':
    main()

Solution (Python):
a=int(input())
if a%2==0:
  print(int(a/2))
else:
  print(int((a+1)/2))

Solution (Python):
n=int(input())

i = n % 2

a = n // 2 + i

print(a)

Solution (Python):

import sys


def solve(N: int):
    if N % 2 == 0:
        print(N // 2)
    else:
        print(N // 2 + 1)
    return



def main():
    def iterate_tokens():
        for line in sys.stdin:
            for word in line.split():
                yield word
    tokens = iterate_tokens()
    N = int(next(tokens))  
    solve(N)

if __name__ == '__main__':
    main()

Solution (Python):
n = int(input())
if n % 2 == 0:
  print(n//2)
else:
  print(n//2 + 1)

Solution (Python):

n = int(input())
if n % 2 == 0:
    print(n//2)
else:
    print((n+1)//2)

Solution (Python):
N = int(input())
if N % 2 == 1:
	n = N + 1
else:
	n = N
print(int(n / 2))

Solution (Python):

 
 
def main():
    n = int(input())
    amari = n % 2
    sho = n // 2
    if amari == 1:
        sho = sho + 1
    
    print(sho)    
    
 
    return 0
 
 
if __name__ == '__main__':
    main()

Solution (Python):
import math
N = int(input())
print(math.ceil(N/2))

Solution (Python):
import math
n=int(input())
r=int(math.ceil(n/2))
print(r)

Solution (Python):
print(-(-int(input())//2))

Solution (Python):
import math

N = int(input())
P = math.floor(N / 2)
P = P + N % 2
print(P)

Solution (Python):
import math 

n = int(input())

print(math.ceil(n/2))

Solution (Python):


N = int(input())

a = N // 2

b = N % 2

if b == 0 :
  
  print(a)
else:
  print(a + 1)

Solution (Python):
import math
print(math.ceil(float(input())/2))

Solution (Python):

import sys


def solve(N: int):
    q, m = divmod(N, 2)
    if m == 1:
        print(q+1)
    else:
        print(q)
    return



def main():
    def iterate_tokens():
        for line in sys.stdin:
            for word in line.split():
                yield word
    tokens = iterate_tokens()
    N = int(next(tokens))  
    solve(N)

if __name__ == '__main__':
    main()

Solution (Python):
a=int(input())
b=a//2
if a%2==1:
  b=b+1
print(b)

Solution (Python):
def solve():
    N = int(input())
    ans = (N + 1) // 2
    print(ans)


if __name__ == '__main__':
    solve()

Solution (Python):






import math
from functools import lru_cache





MOD = 10**9 +7
INF = float('inf')





kaijo_memo = []
def kaijo(n):
  if(len(kaijo_memo) > n):
    return kaijo_memo[n]
  if(len(kaijo_memo) == 0):
    kaijo_memo.append(1)
  while(len(kaijo_memo) <= n):
    kaijo_memo.append(kaijo_memo[-1] * len(kaijo_memo) % MOD)
  return kaijo_memo[n]

gyaku_kaijo_memo = []
def gyaku_kaijo(n):
  if(len(gyaku_kaijo_memo) > n):
    return gyaku_kaijo_memo[n]
  if(len(gyaku_kaijo_memo) == 0):
    gyaku_kaijo_memo.append(1)
  while(len(gyaku_kaijo_memo) <= n):
    gyaku_kaijo_memo.append(gyaku_kaijo_memo[-1] * pow(len(gyaku_kaijo_memo),MOD-2,MOD) % MOD)
  return gyaku_kaijo_memo[n]

def nCr(n,r):
  if(n == r):
    return 1
  if(n < r or r < 0):
    return 0
  ret = 1
  ret = ret * kaijo(n) % MOD
  ret = ret * gyaku_kaijo(r) % MOD
  ret = ret * gyaku_kaijo(n-r) % MOD
  return ret

def factorization(n):
    arr = []
    temp = n
    for i in range(2, int(-(-n**0.5//1))+1):
        if temp%i==0:
            cnt=0
            while temp%i==0:
                cnt+=1
                temp //= i
            arr.append([i, cnt])
    if temp!=1:
        arr.append([temp, 1])

    if arr==[]:
        arr.append([n, 1])
    return arr





N = int(input())

print(math.floor((N+1)/2))

Solution (Python):
n = int(input())
print((n+1)//2)

Solution (Python):
N = input()
N = int(N)
if N%2==0:
  a = N//2
  print(a)
else:
  b = N//2 +1
  print(b)

Solution (Python):
k = int(input())

q = k // 2
mod = k % 2

if mod != 0:
  ans = q + 1
else:
  ans = q

print(ans)

Solution (Python):
n = int(input())
print((n+1)//2)

Solution (Python):
N=int(input())
if N % 2==0:
    print(int(N/2))
else:
    print(int(N/2+0.5))

Solution (Python):
N = int(input())
if(N % 2 == 0):
  print(int(N/2))
else:
  print(int(N/2)+1)

Solution (Python):
a = int(input())
if a%2==0:
    n = a/2
else:
    n = (a+1)/2
print(int(n))

Solution (Python):
I=int(input())

if I%2==1:
  print(int(I/2+1))
else:
  print(int(I/2))

Solution (Python):
N=int(input())
ans=int(N/2)+1
if N%2==0:
  ans-=1
print(ans)

Solution (Python):
N = int(input())
print(N//2 + N % 2)

Solution (Python):
N = int(input())
xx = 0
if N % 2 == 1:
    xx = (N / 2) + 1
else:
    xx = (N / 2)
print(int(xx))

Solution (Python):
import math
print(math.ceil(int(input())/2))

Solution (Python):
N = input()
N = int(N)
if N%2 ==0:
    amari = 0
else:
    amari = 1

N  = N/2
N = int(N)

print(N+ amari)

Solution (Python):
N = int(input())
if N % 2 == 0:
    a = N / 2
else:
    a = int(N / 2) + 1

print(int(a))

Solution (Python):
n = int(input())

if n % 2 == 1:
    print(round(n // 2 + 1))
else:
    print(round(n / 2))

Solution (Python):
N = int(input())
x = int(N / 2) + N % 2
print(x)

Solution (Python):
import sys
from math import factorial


def main(S):
    pass


if __name__ == '__main__':
    n = int(input())

    ans = n // 2
    if (n % 2 == 1):
        ans += 1

    print(ans)

Solution (Python):
n=int(input())
print((n+1)//2)

Solution (Python):
N = int(input())
if N%2 == 1:
    print(int(N/2+1))
else:
    print(int(N/2))

Solution (Python):
N=int(input())

print(-(-N//2))

Solution (Python):
import math

N = int(input())
print(math.ceil(N/2))

Solution (Python):
inputnumber = int(input())
numpage = 0
oddnumber = inputnumber % 2
if inputnumber >= 1 and inputnumber <= 100:
  if oddnumber == 0:
    numpage = inputnumber / 2
    print(int(numpage))
  else:
    inputnumber = inputnumber - 1
    numpage = inputnumber / 2
    numpage = numpage + 1
    print(int(numpage))
else:
  print()

Solution (Python):
n = int(input())
print(int((n + 1) / 2))

Solution (Python):
S = int(input())
A = 0
if S % 2 == 1:
    A = S // 2 + 1
else:
    A = S // 2
print(A)

Solution (Python):
a = int(input())
if a%2 == 0:
    b = a/2
else:
    b=(a+1)/2
print(int(b))

Solution (Python):
n = int(input())
print(int(n % 2 + n / 2))

Solution (Python):
import math
N = int(input())

print(math.ceil(N/2))

Solution (Python):
n = int(input())
print(-((-n)//2))

Solution (Python):
a = int(input())
if a%2 == 0:
  print("{:.0f}".format(a/2))
else:
  print("{:.0f}".format(a//2 +1))

Solution (Python):
N = int(input())

print(N//2+N%2)

Solution (Python):
N = int(input())

if N % 2 == 0:
    print(int(N/2))
else:
    print(int((N+1)/2))

Solution (Python):
n = int(input())
if n % 2 == 0:
    print(int(n/2))
else:
    print(int(n//2+1))

Solution (Python):
n = int(input())
if (n % 2 == 1):
    print("%s" % ((n // 2) + 1))
else:
    print(n // 2)

Solution (Python):
from math import ceil
n = int(input())
print(ceil(n/2))

Solution (Python):
import math

n = int(input())

print(math.ceil(n / 2))

Solution (Python):
import math
 
N = int(input())
print(math.ceil(N/2))

Solution (Python):
N = int(input())
ans = N // 2 + N % 2
print(ans)

Solution (Python):
N=int(input())
print(N//2+N%2)

Solution (Python):
import math
n = int(input())
print(math.ceil(n/2))

Solution (Python):
line = input('')
n = int(line.split(' ')[0])
if n%2 == 0:
  print( int(n/2))
else:
  print( int(n/2)+1)

Solution (Python):

import math
N = int(input())
ans = math.ceil(N / 2)
print(ans)

Solution (Python):
from sys import stdin

def main():
    input = stdin.readline

    N = float(input())

    if(N%2 == 0):
        print(int(N/2))
    else:
        print(int(N/2+1))


if __name__ == "__main__":
    main()

Solution (Python):
N=int(input())
 
if N == 1:
  print(1)
elif N == 2:
  print(1)
else:
  if N % 2 == 1:
    print (int(N / 2) + 1)
  else:
    print (int(N / 2))

Solution (Python):
from math import ceil

N = int(input())
print(ceil(N/2))

Solution (Python):
n = int(input())
ans = -(-n//2)
print(ans)

Solution (Python):
a = int(input())
if a%2==0:
  print(int(a/2))
else:
  print(int((a+1)/2))

Solution (Python):

def main():
    n = int(input())
    print((n+1)//2)


if __name__ == "__main__":
    main()

Solution (Python):
x = input()
int(x)
y = int(x) // 2
if int(x) % 2 != 0:
    y = y + 1

print(y)

Solution (Python):
import math
n = int(input())
print(math.ceil(n/2))

Solution (Python):
import math

if __name__ == "__main__":
    N = int(input())
    ret = math .floor(N / 2)
    if N % 2 == 1:
       ret = ret + 1
    print(ret)

Solution (Python):
import math
N=int(input())
print(math.ceil(N/2))

Solution (Python):
n = input()
n = int(n)
if n % 2 != 0:
  print(int(n/2)+1)
else:
  print(int(n/2))

Solution (Python):

def a(n):

    return -(-n // 2)

def main():
    n = int(input())
    print(a(n))

if __name__ == '__main__':
    main()

Solution (Python):
N = input()
ans = int(N)//2

if int(N)%2 == 1:
  ans += 1 
  
print(ans)

Solution (Python):
a=int(input())
if a%2==0:
  b=a//2
else:
  b=a//2+1
print(b)

Solution (Python):
import math

n = int(input())

print(math.ceil(n/2))

Solution (Python):
N = int(input())

if N % 2 == 0:
    print("{}".format(int(N / 2)))
else:
    print("{}".format(int((N + 1) / 2)))

Solution (Python):
import math

n = int(input())
a = math.ceil(n/2)
print(a)

Solution (Python):
N = 0
N = int(input())
if N%2 == 0:
    print(N//2)
else:
    print(N//2+1)

Solution (Python):
import math
s = int(input())
print(math.ceil(s / 2))

Solution (Python):
n = int(input())

if n % 2 == 0:
  a = n // 2
  
else:
  a = n // 2 + 1
  
print(a)

Solution (Python):
from math import ceil
N = int(input())
print(ceil(N/2))

Solution (Python):
import math 
N = int(input())
print(math.ceil(N/2))

Solution (Python):
s =int(input())

print(s//2+s%2)

Solution (Python):

N = int(input())

if N % 2 == 0:
    print(int(N/2))

else:
    print(int(N/2) + 1)

Solution (Python):
a=int(input())
if a%2==1:
	print(int((a-1)/2)+1)
else:
	print(int(a/2))

Solution (Python):
print((int(input())+1)//2)

Solution (Python):
N=int(input())
if N%2==1:
    print(int(N/2)+1)
else:
    print(int(N/2))

Solution (Python):
n=int(input())
print(-(-n//2))

Solution (Python):
N = int(input())

if N % 2 == 0:
    print(N//2)
else:
    print(N //2 + 1)

Solution (Python):
s = int(input())
print(int(s/2) if s%2 == 0 else int(s/2)+1)

Solution (Python):
N = int(input())
ans = 0
if N % 2 == 1:
    N += 1
    ans = int(N / 2)
else:
    ans = int(N / 2)
print(ans)

Solution (Python):
n=int(input())
if n%2==0:
  print(n//2)
else:
  print(n//2+1)

Solution (Python):
n = int(input())

if n%2 == 0:
    print(int(n/2))

else:
    n =int(n/2)
    n += 1
    print(n)

Solution (Python):
N= int(input())
answer=N//2+ N%2
print(answer)

Solution (Python):
import sys
input = sys.stdin.readline
print(-(-int(input()) // 2))

Solution (Python):
N = int(input())


i = N // 2

j = N % 2


if j == 1:
  print(i+1)
if j == 0:
  print(i)

Solution (Python):
N=int(input())

roundnum=-(-N//2)
print(roundnum)

Solution (Python):
n = input()
n = int(n)
if n % 2 != 0:
  print(int(n/2)+1)
else:
  print(int(n/2))

Solution (Python):
import sys
import numpy as np



n = int(input())

print(int((n+1)/2))

Solution (Python):
import math
N = int(input())
print(math.ceil(N/2))

Solution (Python):
N = int(input())

if N % 2 == 0:
  res = N/2
else:
  res = N//2 + 1

print(int(res))

Solution (Python):
N = int(input())
 
if N % 2 == 0:
  print(int(N / 2))
else:
  print(int((N + 1) / 2))

Solution (Python):
n = int(input())

if n % 2 ==0:
    print(int(n/2))
else:
    print(int((n+1)/2))

Solution (Python):
n = int(input())

print(n // 2 if n % 2 == 0 else n // 2 + 1)

Solution (Python):
N = int(input())

if(N%2 == 0):
    ans = N//2
else:
    ans = N//2
    ans += 1

print(ans)

Solution (Python):
N = int(input())
if (N % 2) == 0:
  print(int(N/2))
else:
  print(int(N//2+1))

Solution (Python):
N = int(input())
if N%2==0: print(int(N/2))
else: print(int(N/2)+1)

Solution (Python):
N=int(input())
print((N+1)//2)