AtCoder Beginner Contest 113 参加記

はい。コンテスト中がbetaサイトが重かった。 ooo- 978(+24) https://beta.atcoder.jp/contests/abc113

A - Discount Fare

Python3

x,y=map(int,input().split())
print(x+y//2)

問題文の指示通りに計算。Yは偶数が保証されているので割り切れない数とか気にする必要なし。

B - Palace

Python3

n=int(input())
t,a=map(int,input().split())
h=[int(i) for i in input().split()]
ans=[0,abs(a-(t-h[0]*0.006))]
for i in range(1,n):
    tmp=abs(a-(t-h[i]*0.006))
    if tmp<ans[1]: ans=[i,tmp]
print(ans[0]+1)

気温を計算して絶対値で最も近いものを保存しておいて最後に出力。気温の計算の()とか微妙にミスして無駄にWA。

C - ID

Python3

n,m=map(int,input().split())
d=[[] for i in range(n)]
ans=[]
for i in range(m):
    p,y=map(int,input().split())
    d[p-1].append((y,i))
for a,i in enumerate(d):
    i.sort()
    for b,j in enumerate(i):
        c=str(a+1)
        d=str(b+1)
        c="0"*(6-len(c))+c
        d="0"*(6-len(d))+d
        ans.append((j[1],c+d))
ans.sort()
for i in ans:
    print(i[1])

市を県に付属させて入力の番目も合わせて保存。県ごとに付属している市を誕生年でナンバリング。最後にまとめて入力の番目で出力。