add solution for hw3:3839 & tests
Some checks failed
Fast Reverse Tests / test (push) Failing after 15s
Reverse Tests / test (push) Successful in 8s
Sum Tests / test (push) Successful in 8s

This commit is contained in:
2026-01-30 23:17:36 +05:00
parent 8b7b78ee4d
commit 02aefc2a89
2 changed files with 64 additions and 1 deletions

View File

@@ -19,4 +19,4 @@ jobs:
- name: Run Sum tests - name: Run Sum tests
run: | run: |
java -ea -cp out reverse.ReverseTest Base 3233 3435 3637 java -ea -cp out reverse.ReverseTest Base 3233 3435 3637 3839

View File

@@ -0,0 +1,63 @@
package reverse;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.Arrays;
public class ReverseMax {
public static void main(String[] args) throws IOException {
FastScanner sc = new FastScanner();
int[][] lines = new int[8][];
int linesCount = 0;
while (sc.hasNextLine()) {
int[] line = new int[8];
int count = 0;
while (sc.hasNextInt()) {
if (count >= line.length) {
line = Arrays.copyOf(line, line.length * 2);
}
line[count++] = sc.nextInt();
}
sc.nextLine();
line = Arrays.copyOf(line, count);
if (linesCount >= lines.length) {
lines = Arrays.copyOf(lines, lines.length * 2);
}
lines[linesCount++] = line;
}
PrintWriter out = getPrintWriter(linesCount, lines);
out.flush();
}
private static PrintWriter getPrintWriter(int linesCount, int[][] lines) {
PrintWriter out = new PrintWriter(System.out);
for (int i = 0; i < linesCount; i++) {
int[] line = lines[i];
for (int j = 0; j < line.length; j++) {
if (j > 0) out.print(" ");
int maxValue = lines[i][j];
for (int k = i; k < linesCount; k++) {
for (int m = j; m < lines[k].length; m++) {
if (lines[k][m] > maxValue) {
maxValue = lines[k][m];
}
}
}
out.print(maxValue);
}
out.println();
}
return out;
}
}