【ABC163 C】「management」を解く【Python3】

「AtCoder」解説一覧へ

与えられた、社員番号iさんの直属の上司の社員番号Aiから、各社員について直属の部下が何人いるか求める問題です。

提出
n = int(input())
a = list(map(int, input().split()))

li = [0]*n

for i in a:
    li[i-1] += 1

for i in li:
    print(i)

最後に各社員についての答えを出力するので、そのためにリストを作成しておきます。

リストの要素数はn個で、要素はすべて0です。

入力したAi(=a)を順番に検証し、リストliに1人ずつ足していきます。

リストのインデックスは0始まりなので、[i-1]と指定することで、最終的にリストの中には、部下の人数が、社員番号1から順番に入っていることになります。

このあと、リストの中身を順番に出力させればOKです。

【ABC163】解説記事リスト

「AtCoder」解説一覧に戻る

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です