Follow @data_no_memo

メモ

個人的なメモです。他者にわかりやすく書くよりも未来の自分にわかりやすく書いています。なお、記事内容の正確さは保証できません。勉強中の身ですので、間違い等ご指摘頂けたら幸いです。

AtCoder Beginner Contest 137

Pythonの練習がてらAtCoderの練習問題に取り組んでいたが、AtCoder Beginner Contest 137のC- Green Binの問題で、合っているだろうにも関わらず全く正解判定とならない。 どういう事だろう…。

x = list(map(str, input().split())) #入力

n = int(x[0]) #最初の文字
z = x[1:] #最初の数字削除

# alphabet(list)をカウントする関数
def word_count(alphabet):
    res_dic = {}
    for i in alphabet:
        test = i in res_dic.keys() 
        if test == False: 
            res_dic[i] = 1
        elif test == True:
            plus = res_dic[i] + 1
            res_dic[i] = plus
    return res_dic

# 全ての文字をカウント
res = []
for i in z:
    alphabet = list(i)
    res.append(word_count(alphabet))

# 全ての組み合わせをチェック
record = []
for i in res:
    for j in res:
        if i == j:
            record.append(1)
        elif i != j :
            record.append(0)

print(int((sum(record) - n)/2))