https://www.acmicpc.net/problem/2531
2021/04/23
166384 KB
4216 ms
set λ°°μ΄
β for i in range(N):
i λΆν° μ°μμΌλ‘ k κ°μ μ΄λ°₯μ λ²νΈλ₯Ό μ μ₯νλ ν¨μ
arr λ°°μ΄
β d κ°μ 0μΌλ‘ μ΄κΈ°ν λμ΄μλ λ°°μ΄
arr[setμ λ€μ΄μλ ν¨μμ λ²νΈ] = 1
β arr.count(1) : μλ‘ λ€λ₯Έ μ΄λ°₯μ κ°μ
N, d, k, c = map(int, input().split())
sushi = []
for _ in range(N):
sushi.append(int(input()))
MAX = 0
for i in range(N):
arr = [0 for _ in range(d+1)]
kind = 0
set = []
for j in range(k):
arr[sushi[(i+j) % N]] = 1
set.append(sushi[(i+j) % N])
kind += arr.count(1)
# μΏ ν°λ²νΈμ μ΄λ°₯μ΄ setμ ν¬ν¨λμ΄μμ§ μμΌλ©΄
if c not in set:
kind += 1
MAX = max(MAX, kind)
print(MAX)