Also habe ich versucht, diese Aufgabe zu lösen: https://training.olinfo.it/#/task/ois_avg/statement. Aber in einigen Testfällen ist meine Ausgabe offensichtlich falsch.

Aufgabe: Sie haben N Produkte, deren Preise in einer Liste P mit N Elementen angegeben sind (jedes Produkt hat einen Preis). Sie müssen den Preis einiger Produkte ändern, um einen Durchschnittspreis von K zu erhalten. K, N und alle Elemente von P sind positive ganze Zahlen. Wie groß ist die Mindestanzahl der Produkte, deren Preise geändert werden müssen?

Mein Code:


#input
N, K = map(int, input().strip().split())
P = list(map(int, input().strip().split()))

#main
ans = 0
average = sum(P)/N
difference = (average - K)*N
if average<K:
    ans = 1
elif average == K:
    ans = 0
else:
    P.sort(reverse=True)
    for i in range(N):
        ans+=1
        difference = difference - P[i]+1
        if difference < 1:
            break
#output
print(ans)