Python課題―お一人様一点限り(正解率61.4%)

以前リストのfor問題で答を見ないとわからないという屈辱を味わったがそれは文法仕様の問題であった自身の思考がヘッポコというわけではない。ヘッポコでないことを証明するためにこの問題である。2人目以降から過去客全員と照らし合わせて1回でも引っかかったらNO、全員引っかからなかったらYESという算段である。ここまで来るとかなり実用的なプログラミングという様相である。たぶん見る人が見たら「なんだこのヘッポコアルゴリズム」と言いそうであるが、それ以前に38.6%の人は解けていないわけで。

#お一人様一点限り (paizaランク C 相当) 
# coding: utf-8
n = int(input())
c = [input() for i in range(n)]
for j in range(n):
    if j == 0: #1人目は絶対YES
        print("YES")
    k = 0 #過去客との比較開始
    while j >= 1: #以前の客だけチェックする
        if c[j] == c[k]:
            print("NO")
            break
        if k == j - 1:  
            print("YES")
            break
        k += 1