[PYTHON] AtCoder Grand Contest 041 Teilnahmebericht

AtCoder Grand Contest 041 Teilnahmebericht

AGC041A - Table Tennis Training

Es brach in 28,5 Minuten durch. WA5. Ich fand es einfach und reichte es ein, aber es war nicht einfach.

Das früheste der folgenden ist die Antwort

  1. Gehen Sie geradeaus näher (aber nur, wenn die Entfernung gerade ist, da Sie sich gegenseitig passieren, wenn die Entfernung nicht gerade ist)
  2. Treffen um 1.
  3. Treffen Sie sich bei N.
  4. Zwei Personen gehen auf 1 zu, und der Spieler, der in A war und zuerst ankommt, bleibt 1 Runde in 1 (dies macht die Distanz gleichmäßig), dreht sich um und nimmt B auf
  5. Zwei Personen gehen auf N zu, der Spieler, der in B war und zuerst ankommt, bleibt 1 Runde in N (dies macht die Distanz gleichmäßig), dreht sich um und nimmt A auf
N, A, B = map(int, input().split())

t = float('inf')
if abs(A - B) % 2 == 0:
    t = min(abs(A - B) // 2, t)
t = min(B - 1, t)
t = min(N - A, t)
t = min((A - 1 + 1) + (B - A - 1) // 2, t)
t = min((N - B + 1) + (N - (A + (N - B + 1))) // 2, t)
print(t)

PS: Wenn Sie noch einmal darüber nachdenken, brauchen Sie nicht 2 und 3, und wenn es gerade ist, müssen Sie nicht über das Muster nachdenken, das an den Rand geht.

N, A, B = map(int, input().split())

if (B - A) % 2 == 0:
    print((B - A) // 2)
else:
    print(min(A, N - B + 1) + (B - A - 1) // 2)

AGC041B - Voting Judges

Brechen Sie in 113 Minuten durch. WA5. Essen Sie TLE mit Python, essen Sie TLE mit PyPy, essen Sie TLE, auch wenn es mit Go umgeschrieben wurde, löschen Sie eine nutzlose Kopie von Slice, AC, nur einen schweren Testfall Es kam herein und war durcheinander.

Der Tanz der Freude wurde jedoch von dem Zustand der Tränen wiedergeboren, der in den 1900er Jahren bis in die prächtigen 900er Jahre als voller Bocco eingestuft wurde.

Da M die maximale Anzahl von Stimmen ist, die ein Problem erhalten können, ist es im Grunde ein Kandidat, wenn die aktuelle Punktzahl + M gleich oder höher als die P-te Punktzahl ist. Wenn es jedoch zu viele Stimmen gab, musste ich für die P-te Punktzahl stimmen, was sehr schwierig war. Um ehrlich zu sein, habe ich es richtig geschrieben, aber ich habe es oft durchgesehen. Genau genommen scheint es irgendwo ein Loch zu geben ...

package main

import (
	"bufio"
	"fmt"
	"os"
	"sort"
	"strconv"
)

func min(x, y int) int {
	if x < y {
		return x
	}
	return y
}

func main() {
	N := readInt()
	M := readInt()
	V := readInt()
	P := readInt()

	A := make([]int, N)
	for i := 0; i < N; i++ {
		A[i] = readInt()
	}
	sort.Sort(sort.Reverse(sort.IntSlice(A)))
	p := A[P-1]
	V -= P - 1
	b := A[P-1:]
	for {
		mv := M * V
		for i := 0; i < len(b); i++ {
			t := min(p-b[i], M)
			mv -= t
		}
		if mv > 0 {
			p += (mv + len(b) - 1) / len(b)
		} else {
			break
		}
	}

	result := 0
	for i := 0; i < N; i++ {
		if A[i]+M >= p {
			result++
		}
	}
	fmt.Println(result)
}

const (
	ioBufferSize = 1 * 1024 * 1024 // 1 MB
)

var stdinScanner = func() *bufio.Scanner {
	result := bufio.NewScanner(os.Stdin)
	result.Buffer(make([]byte, ioBufferSize), ioBufferSize)
	result.Split(bufio.ScanWords)
	return result
}()

func readString() string {
	stdinScanner.Scan()
	return stdinScanner.Text()
}

func readInt() int {
	result, err := strconv.Atoi(readString())
	if err != nil {
		panic(err)
	}
	return result
}

Recommended Posts

AtCoder Grand Contest 041 Teilnahmebericht
AtCoder Grand Contest 040 Teilnahmebericht
AtCoder Grand Contest 047 Teilnahmebericht
AtCoder Beginner Contest 181 Teilnahmebericht
AtCoder Beginner Contest 161 Teilnahmebericht
AtCoder Beginner Contest 151 Teilnahmebericht
AtCoder Beginner Contest 154 Teilnahmebericht
AtCoder Beginner Contest 166 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
AtCoder Beginner Contest 157 Teilnahmebericht
AtCoder Beginner Contest 167 Teilnahmebericht
AtCoder Beginner Contest 179 Teilnahmebericht
AtCoder Anfängerwettbewerb 182
AtCoder Anfängerwettbewerb 146 Teilnahmebericht
AtCoder Beginner Contest 152 Teilnahmebericht
AtCoder Beginner Contest 155 Teilnahmebericht
AtCoder Beginner Contest 174 Teilnahmebericht
AtCoder Beginner Contest 171 Teilnahmebericht
AtCoder Beginner Contest 149 Teilnahmebericht
AtCoder Anfängerwettbewerb 148 Teilnahmebericht
AtCoder Beginner Contest 170 Teilnahmebericht
Teilnahmebericht des AtCoder Chokudai Contest 005
AtCoder Beginner Contest 183 Teilnahmebericht
Teilnahmebericht des AtCoder HHKB Programmierwettbewerbs 2020
Teilnahmebericht des AtCoder Acing Programming Contest 2020
Teilnahmebericht des AtCoder Keyence Programming Contest 2020
Teilnahmebericht des AtCoder Panasonic Programming Contest 2020
AtCoder Grand Contest 041 Bewertung
Teilnahmebericht zum AtCoder Library Practice Contest (Python)
AtCoder Grand Contest 048 Bewertung
AtCoder Grand Contest 045 Bewertung
AtCoder Grand Contest 044 Bewertung
AtCoder Einführung in den Heuristik-Wettbewerbsbericht
AtCoder Grand Contest 046 Bewertung
AtCoder Judge System Update Testwettbewerb 202004 Teilnahmebericht
AtCoder Beginner Contest # 003 Teilnahmehinweis
Eintragsdatensatz für den ACL-Anfängerwettbewerb
Atcoder Anfängerwettbewerb 146 Teilnahme Tagebuch
Teilnahmebericht des AtCoder Sumitomo Mitsui Trust Bank Programmierwettbewerbs 2019
AtCoder Grand Contest Past Question Challenge 2
AtCoder Grand Contest Vergangene Frage Herausforderung 1
Teilnahmebericht des Programmierwettbewerbs 2020 der AtCoder Hitachi, Ltd.