AtCoder ABC 113 B – Palace Python解説

スポンサーリンク

Palace

今回の問題はこちら「Palace」。平均気温がA度に最も近い地点を選ぶ問題です。
方針としては、受け取った標高を計算してA度に近いか比較し、最後にその番号を出力していこうかと思います。

n = int(input())
t, a = map(int, input().split())
h = list(map(int, input().split()))

tmp = 100000

for i in range(n):
    if tmp > abs(a - (t - h[i] * 0.006)):
        tmp = abs(a - (t - h[i] * 0.006))
        ans = i + 1
        
print(ans)

各地点の平均気温は問題文にあるようにt – h[i] * 0.006で求めて、Aとの気温の差は絶対値を使いたいのでabs関数を使っています。