곽로그
[백준 1932, Java] 정수 삼각형 본문
반응형
문제
check
코드
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.StringTokenizer;
public class Main {
public static int N;
public static int[][] integerTriagle;
public static int[][] maxes;
public static void main(String[] args) throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
StringTokenizer st;
N = Integer.parseInt(br.readLine());
integerTriagle =new int[N+1][N+1];
maxes =new int[N+1][N+1];
for(int i = 1; i<=N; i++){
st = new StringTokenizer(br.readLine()," ");
for(int j= 1; j<=i ;j++){
integerTriagle[i][j] = Integer.parseInt(st.nextToken());
}
}
calculateMax();
int result = getMax();
bw.write(String.valueOf(result));
bw.flush();
br.close();
bw.close();
}
public static void calculateMax(){
for(int n = 1; n<=N ; n++){
if(n==1){
maxes[n][n] = integerTriagle[n][n];
}
else{
for(int index = 1; index<=n; index++){
maxes[n][index] = Math.max(maxes[n-1][index-1],maxes[n-1][index]) + integerTriagle[n][index];
}
}
}
}
public static int getMax(){
int max = maxes[N][0];
for(int index = 1; index<=N; index++){
if(max<maxes[N][index]) max = maxes[N][index];
}
return max;
}
}
반응형
'알고리즘 > 백준' 카테고리의 다른 글
[백준 1662, Java] 압축 (0) | 2020.11.22 |
---|---|
[백준 13398, Java] 연속합2 (0) | 2020.11.18 |
[백준 2156, Java] 포도주 시식 (0) | 2020.11.16 |
[백준 11057, Java] 오르막 수 (0) | 2020.11.16 |
[백준 1309, Java] 동물원 (0) | 2020.11.16 |
Comments