Submission #590324

#TimeUsernameProblemLanguageResultExecution timeMemory
590324dnialhRope (JOI17_rope)Pypy 3
80 / 100
1179 ms262144 KiB
from collections import Counter import sys as sus input = sus.stdin.readline n, m = map(int, input().split()) c = list(map(int, input().split())) ct = Counter(c) o = ct.most_common() odd = Counter() eve = Counter() for i in range(n - 1): if i % 2: odd[(c[i], c[i + 1])] += 1 else: eve[(c[i], c[i + 1])] += 1 out = [] for i in range(1, m + 1): res = 0 for v, vc in o: if v == i: continue bl = odd[(i, v)] + odd[(v, i)] br = eve[(i, v)] + eve[(v, i)] bad = min(bl, br) res = max(res, vc - bad) if bad == 0: break out.append(n - res - ct[i]) print('\n'.join(map(str, out)))
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...