백준
백준 2846 오르막길(Java)
Park DJ
2023. 1. 17. 01:50
https://www.acmicpc.net/problem/2846
2846번: 오르막길
상근이는 자전거를 타고 등교한다. 자전거 길은 오르막길, 내리막길, 평지로 이루어져 있다. 상근이는 개강 첫 날 자전거를 타고 가면서 일정 거리마다 높이를 측정했다. 상근이는 가장 큰 오르
www.acmicpc.net
해석 및 팁
이문제는 주어진 값을 배열에 저장하여 앞의값보다 뒤의값이 크면 그 차이를 비교해서 가장 큰 수를 구하면 됩니다. 오르막길이 아닌경우에는 0으로 초기화시켜주면 됩니다.
Java 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int[] arr = new int[n];
int max = 0;
int sum = 0;
for(int i = 0; i < n; i++) {
arr[i]= sc.nextInt();
}
for(int i = 0; i < n-1; i++) {
if(arr[i] < arr[i+1]) sum += arr[i+1] - arr[i]; //증가하면 그값만큼 더하기
else sum = 0;
max = Math.max(max, sum); //가장 큰 오르막길 구하기
}
System.out.println(max);
}
}