[JAVA] ABC - 133 - A & B & C & D.

AtCoder ABC 133 A&B&C&D AtCoder - 133

A - T or T

	private void solveA() {
		int n = nextInt();
		int a = nextInt();
		int b = nextInt();

		out.println(n * a > b ? b : n * a);
	}

B - Good Distance

	private void solveB() {
		int n = nextInt();
		int d = nextInt();
		int[][] wk = Stream.generate(() -> IntStream.range(0, d).map(i -> nextInt()).toArray()).limit(n)
				.toArray(int[][]::new);

		int res = 0;
		for (int i = 0; i < n; i++) {
			//i <Anmerkung j
			for (int j = i + 1; j < n; j++) {
				long tmp = 0;
				for (int k = 0; k < d; k++) {
					tmp += Math.pow(wk[i][k] - wk[j][k], 2);
				}
				long tmpRes = (long) Math.sqrt(tmp);
				if (Math.pow(tmpRes, 2) == tmp) {
					res++;
				}
			}
		}

		out.println(res);
	}

C - Remainder Minimization 2019

――Was können Sie tun, wenn Sie das Maximum (r) reduzieren?

	private void solveC() {
		final int CONST_MOD = 2019;
		int l = nextInt();
		int r = nextInt();
		/*
		 *Nichts kann getan werden, ohne das Maximum vorerst zu reduzieren.
		 * l+Nehmen Sie den kleineren Wert von 2019 oder r als Maximalwert an (da es sich um einen MOD handelt).
		 * l+Ein Zyklus im Jahr 2019. Damit kommt der Mindestwert jedoch nur einmal heraus.
		 * +(2019*2)Wenn Sie zwei Runden fahren, erscheint 1 zweimal.
		 *
		 */
		int wkR = Math.min(l + (CONST_MOD * 2), r);
		int res = 2020;
		for (int i = l; i <= wkR; i++) {
			for (int j = i + 1; j <= wkR; j++) {
				res = Math.min(((i % CONST_MOD) * (j % CONST_MOD)) % CONST_MOD, res);
			}
		}

		out.println(res);
	}

D - Rain Flows into Dams

Beispiel: 2

Damm 3 8 7 5 5
Berg a B C D E
2 4 12 2 8
	 
Damm 1=Berg A./2 +Berg B./2  ->Damm 1*2 =Berg A. +Berg B.  -> Berg B. =Damm 1*2 -Berg A.
Damm 2=Berg B./2 +Berg C./2  ->Damm 2*2 =Berg B. +Berg C.  -> Berg C. =Damm 2*2 -Berg B.
Damm 3=Berg C./2 +Berg D./2  ->Damm 3*2 =Berg C. +Berg D.  -> Berg D. =Damm 3*2 -Berg C.
Damm 4=Berg D./2 +Berg E./2  ->Damm 4*2 =Berg D. +Berg E.  -> Berg E. =Damm 4*2 -Berg D.
Damm 5=Berg E./2 +Berg A./2  ->Damm 5*2 =Berg E. +Berg A.  -> Berg A. =Damm 5*2 -Berg E.

Finden Sie zuerst Berg A, indem Sie die obige Gleichung transformieren
Berg A.=Damm 1-Damm 2+Damm 3-Damm 4+Damm 5
	 
Wenn Berg A entschieden wird, wird es nach Berg B entschieden
Berg B.=Damm 1*2 -Berg A.
Berg C.=Damm 2*2 -Berg B.
Berg D.=Damm 3*2 -Berg C.
Berg E.=Damm 4*2 -Berg D.
	private void solveD() {
		int n = nextInt();
		int[] wk = IntStream.range(0, n).map(i -> nextInt()).toArray();

		long a = 0;

                //Der gerade nummerierte Damm+Die ungerade Anzahl von Dämmen-
		for (int i = 0; i < wk.length; i++) {
			if (i % 2 == 0) {
				a += wk[i];
			} else {
				a -= wk[i];
			}
		}
		long[] mountain = new long[n];
		mountain[0] = a;
		//Der letzte Berg ist Berg A, daher ist er ausgeschlossen
		for (int i = 0; i < mountain.length - 1; i++) {
			mountain[i + 1] = wk[i] * 2 - mountain[i];
		}
		StringBuilder builder = new StringBuilder();
		for (long l : mountain) {
			builder.append(l + " ");
		}
		out.println(builder.toString().trim());
	}

Recommended Posts

ABC - 129 - A & B & C & D.
ABC - 133 - A & B & C & D.
ABC - 122 - A & B & C & D.
ABC - 125 - A & B & C & D.
ABC - 130 - A & B & C & D.
ABC - 126 - A & B & C & D.
ABC - 134 - A & B & C & D & E.
ABC - 131 - A & B & C & D & E.
ABC - 013-A & B & C.
ABC - 023 - A & B & C.
ABC - 036-A & B & C.
ABC - 010 - A & B & C.
ABC - 028 - A & B & C.
ABC - 015 - A & B & C.
ABC - 128 - A & B & C.
ABC - 012-A & B & C.
ABC - 018 - A & B & C.
ABC - 054 - A & B & C.
ABC - 017 - A & B & C.
ABC - 029 - A & B & C.
ABC - 022 - A & B & C.
ABC - 019 - A & B & C.
ABC - 020 - A & B & C.
ABC - 030 - A & B & C.
ABC - 127 - A & B & C.
ABC - 007 - A & B & C.
ABC - 132 - A & B & C.
ABC - 026 - A & B & C.
ABC - 014 - A & B & C.
ABC - 016 - A & B & C.
ABC - 011-A & B & C.
ABC - 031 - A & B & C.
ABC - 021 - A & B & C.
ABC - 025 - A & B & C.
ABC - 024 - A & B & C.
ABC - 027 - A & B & C.
ABC - 080 - A & B & C.
diverta 2019 Programmierwettbewerb A & B & C & D.
AtCoder Anfängerwettbewerb 169 A, B, C mit Rubin
atcoder ABC113 C Problem
Atcoder ABC70 D Problem
ABC093 C - Gleiche Ganzzahlen
atcoder ABC115 C Problem
AtCoder Anfängerwettbewerb 170 A, B, C bis Rubin
Eine Person, die C ++ schreibt, hat versucht, Java zu schreiben
Machen Sie einen SOAP-Aufruf in C #
Rufen Sie C-Sprachfunktionen von Swift aus auf
Was ist ein zweidimensionales Ruby-Array?
Konvertieren Sie das 2D-Array von Swift in das 2D-Array von C.