[PYTHON] Yukicoder-Wettbewerb 251 Teilnehmerrekord

Yukicoder-Wettbewerb 251 Teilnehmerrekord

A 1070 Missing a space

Sie können nicht mit 0 beginnen, also können Sie so viel subtrahieren.

C = input()

print(len(C) - 1 - C.count('0'))

B 1071 Behomaler

Erstens, wenn Behomalar weniger MP verbraucht, ist alles Behomalar in Ordnung. Wenn Behomaler mehr MP als Behomaler N-mal verbraucht, ist alles Behomaler in Ordnung. Das Problem liegt in der Mitte, zum Beispiel Behomaler. Wenn der Speicherverbrauch von Behomalar doppelt so hoch ist wie der von Behomalar, wird die andere Person als die mit den höchsten HP mit Behomalar wiederhergestellt, und wenn er fertig ist, wird die verbleibende Person mit Behomalar wiederhergestellt. Es ist das gleiche, ob es das 1,1-fache oder das 1,9-fache ist. Wenn es das 2,1-fache ist, wird es mit Behomalar wiederhergestellt, mit Ausnahme der Person mit der ersten und zweithöchsten HP, und wenn es vorbei ist, werden die verbleibenden zwei Personen mit Behoimi wiederhergestellt. Der Speicherverbrauch von Behomalar ist Ceil, was der Vergrößerung von Behoimi entspricht. Beachten Sie, dass die anfängliche HP 1 beträgt.

from math import ceil

N, K, X, Y = map(int, input().split())
A = list(map(int, input().split()))

B = [((a - 1) + K - 1) // K for a in A]
B.sort(reverse=True)

if Y <= X:
    print(Y * B[0])
    exit()
t = ceil(Y / X) - 1
if t < N:
    print(Y * B[t] + X * sum(B[i] - B[t] for i in range(t)))
else:
    print(X * sum(B[i] for i in range(N)))

C 1072 A Nice XOR Pair

Zähle jede Zahl von A und addiere das Produkt jeder Zahl von A und A x oder X. Wenn A oder X, wird es ein Paar mit A und doppelter Zählung, also 2 am Ende Sie können durch dividieren. Es ist jedoch nur dann besonders, wenn X = 0 ist, und es wird mit sich selbst mit A x oder 0 = A kombiniert, also nur in diesem Fall Anzahl von A </ sub> C 2 </ strong> sum sub>.

N, X = map(int, input().split())
A = [int(input()) for _ in range(N)]

d = {}
for a in A:
    d.setdefault(a, 0)
    d[a] += 1

result = 0
if X == 0:
    for v in d.values():
        result += v * (v - 1) // 2
    print(result)
else:
    for k in d:
        if k ^ X in d:
            result += d[k] * d[k ^ X]
    print(result // 2)

D 1073 Infinite Sugoku

Besiegt. Ich kann schreiben, dass es naiv ist. N ≤ 10 18 </ sup> ist unmöglich, nicht wahr?

Recommended Posts

Yukicoder-Wettbewerb 266 Teilnehmerrekord
Yukicoder-Wettbewerb 263 Teilnehmerrekord
Yukicoder-Wettbewerb 243 Teilnehmerrekord
Yukicoder-Wettbewerb 273 Teilnehmerrekord
Yukicoder-Wettbewerb 252 Teilnehmerrekord
Yukicoder-Wettbewerb 259 Teilnehmerrekord
Yukicoder-Wettbewerb 249 Teilnehmerrekord
Yukicoder-Wettbewerb 251 Teilnehmerrekord
Yukicoder-Wettbewerb 241 Teilnehmerrekord
Yukicoder-Wettbewerb 257 Teilnehmerrekord
Yukicoder-Wettbewerb 254 Teilnehmerrekord
Yukicoder-Wettbewerb 246 Teilnehmerrekord
Yukicoder-Wettbewerb 275 Teilnehmerrekord
Yukicoder-Wettbewerb 274 Teilnehmerrekord
Yukicoder-Wettbewerb 247 Teilnehmerrekord
Yukicoder-Wettbewerb 261 Teilnehmerrekord
Yukicoder-Wettbewerb 248 Teilnehmerrekord
Yukicoder-Wettbewerb 270 (Mathematik-Wettbewerb) Teilnahmeprotokoll
Yukicoder-Wettbewerb 272 (Weird Math Contest) Teilnahmeprotokoll
Yukicoder-Wettbewerb 256 Eintragungsrekord
Yukicoder-Wettbewerb 267 Eintragungsrekord
Yukicoder-Wettbewerb 264 Eintragungsrekord
Yukicoder-Wettbewerb 245 Eintragungsrekord
Yukicoder-Wettbewerb 250 Eintragungsrekord
Yukicoder-Wettbewerb 262 Eintragungsrekord
Yukicoder-Wettbewerb 259 Bewertung
Yukicoder-Wettbewerb 261 Bewertung
Yukicoder-Wettbewerb 267 Bewertung
Yukicoder-Wettbewerb 266 Bewertung
Yukicoder-Wettbewerb 263 Bewertung
Yukicoder-Wettbewerb 268 Bewertung
AtCoder Beginner Contest 181 Teilnahmebericht
AtCoder Beginner Contest 161 Teilnahmebericht
AtCoder Beginner Contest 151 Teilnahmebericht
AtCoder Beginner Contest 176 Teilnahmebericht
AtCoder Beginner Contest 154 Teilnahmebericht
AtCoder Beginner Contest # 003 Teilnahmehinweis
AtCoder Grand Contest 041 Teilnahmebericht
AtCoder Beginner Contest 166 Teilnahmebericht
AtCoder Grand Contest 040 Teilnahmebericht
AtCoder Beginner Contest 153 Teilnahmebericht
AtCoder Beginner Contest 145 Teilnahmebericht
AtCoder Beginner Contest 184 Teilnahmebericht
AtCoder Beginner Contest 165 Teilnahmebericht
AtCoder Beginner Contest 160 Teilnahmebericht
AtCoder Beginner Contest 169 Teilnahmebericht
AtCoder Beginner Contest 178 Teilnahmebericht
AtCoder Beginner Contest 163 Teilnahmebericht
AtCoder Beginner Contest 159 Teilnahmebericht
AtCoder Beginner Contest 164 Teilnahmebericht
AtCoder Regular Contest 105 Teilnahmebericht
AtCoder Beginner Contest 168 Teilnahmebericht
AtCoder Beginner Contest 150 Teilnahmebericht
AtCoder Beginner Contest 158 Teilnahmebericht
AtCoder Beginner Contest 180 Teilnahmebericht
AtCoder Regular Contest 104 Teilnahmebericht
AtCoder Beginner Contest 156 Teilnahmebericht
AtCoder Beginner Contest 162 Teilnahmebericht