Yukicoder No.349 干支の置き物

,

++ $$_ is 何。

No.349 干支の置き物

実装

perl 75byte

$n=<>;chop,$a{$_}++for<>;@a=sort{$b-$a}values%a;print$n>2*$a[0]-2?YES:NO,$/

辞書に入れて数えvaluesを降順にsortして式。

非golf

#!/usr/bin/env python3
n = int(input())
f = {}
for _ in range(n):
    a = input()
    if a not in f:
        f[a] = 0
    f[a] += 1
k = max(f.values())
print(2*(k-1) < n and 'YES' or 'NO')

解読

tails氏 perl 43byte

<>;@a=<>;print grep(@a<2*++$$_-1,@a)?NO:YES

1行目$N$は捨て、残りを配列@aに入れる。grep(@a<2*++$$_-1,@a)で判定。$N$は@aで取れて、$$_dereferenceらしい。$_は普通の文字列だけど、$$_は何? 初期値は1で、++ $$_とすることで$k$回目の$A_i$の出現の際に++ $$_は整数$k$になるようだが。