高橋君がNページの書類を両面印刷するために、紙が何枚必要か求める問題です。
偶数ページの場合は、2で割った枚数、奇数ページの場合は、もう1枚必要になります。
提出
n = int(input())
ans = n//2
if n%2 != 0:
ans += 1
print(ans)
//は切り捨て除算演算子です。
奇数だった場合、切り捨て除算に「+1」をしていますが、この結果は切り上げ除算と同じものになります。
ということで、切り上げ除算を計算しても問題ないです。
下記のようにmathモジュールを使うと、切り上げを行うこともできます。
提出
import math
n = int(input())
ans = math.ceil(n/2)
print(ans)
一見わかりづらいですが、Python3の場合、以下のように書いても切り上げになります。
提出
n = int(input())
ans = -(-n//2)
print(ans)
最初「-n」を2で割っているため、切り捨てで絶対値が大きい方の数になっているので、それをさらにマイナスにすると、切り上げした結果と同じ数字になります。