Port 53

明日のための技術メモ

AtCoder AGC041

AtCoder AGC041のまとめ。
A問題提出したけど場合分けが甘すぎてペナ食らって0完でした...

目次

A. Table Tennis Training

問題文 f:id:saturn-glave:20191231121826p:plain

まず、a,bが最初に配置されたテーブル間の距離をとっておく。
テーブル間の距離が偶数・奇数で移動の方法が変わる。
偶数の時は、距離の半分の移動回数が最短になる。
奇数の時は、近い方の端に寄せるように移動させるため、
端までの移動回数と偶奇調整で1を偶数の分の加算する

#coding:utf-8
n, a, b = map(int, input().split())
#a,bのテーブル距離
dist = b-a

if dist % 2 == 0:
    ans = dist // 2
else:
    ans = min(a-1, n-b)+1+(dist//2)

print(ans)