Chuyện là hôm qua em lên CodeChef luyện công, mọi chuyện rất suông sẻ cho đến khi SUBMIT bài https://www.codechef.com/problems/SUMTRIAN, mặc dù chạy trong máy đúng nhưng khi submit cứ bị lỗi NZEC mãi em sửa cả ngày rồi vẫn ko đc, ức chế quá đi :beatbrick:
Đại ca nào rảnh nhìn hộ code em tý với :sosad:
Đại ca nào rảnh nhìn hộ code em tý với :sosad:
Code:
import java.io.IOException; import java.io.BufferedReader; import java.io.InputStreamReader; import java.io.PrintWriter; import java.io.BufferedOutputStream; public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); PrintWriter pw = new PrintWriter(new BufferedOutputStream(System.out)); int t = Integer.parseInt(br.readLine()); // reusable dynamic programming table int[][] arr = new int[100][100]; /*// init borders, doesn't require in Java for (int i = 0; i < 99; ++i) { arr[i][0] = arr[i][i + 1] = 0; }*/ String s; for (int i = 0; i < t; ++i) { int n = Integer.parseInt(br.readLine()); arr[1][1] = Integer.parseInt(br.readLine()); for (int j = 2; j < n; ++j) { s = br.readLine(); for (int k = 1; k <= j; ++k) { int temp = Integer.parseInt(s.split(" ")[k - 1]); if (temp + arr[j - 1][k - 1] > temp + arr[j - 1][k]) { arr[j][k] = temp + arr[j - 1][k - 1]; } else { arr[j][k] = temp + arr[j - 1][k]; } } } s = br.readLine(); int max = 0; for (int k = 1; k <= n; ++k) { int temp = Integer.parseInt(s.split(" ")[k - 1]); if (temp + arr[n - 1][k - 1] > temp + arr[n - 1][k]) { arr[n][k] = temp + arr[n - 1][k - 1]; } else { arr[n][k] = temp + arr[n - 1][k]; } if (arr[n][k] > max) { max = arr[n][k]; } } pw.println(max); // print out dynamic programming table /*for (int j = 0; j <= n; ++j) { for (int k = 0; k <= n; ++k) { pw.print(arr[j][k] + " "); } pw.println(); }*/ } br.close(); pw.close(); } }
Comment