Park DJ
dj0998
Park DJ
전체 방문자
오늘
어제
  • 분류 전체보기 (363)
    • 백준 (363)

공지사항

인기 글

태그

  • 백준 2467
  • Java
  • 백준 7567
  • 백준 3135
  • 백준 24039
  • 백준 1495
  • 백준 14582
  • 백준 7662
  • 백준 6550
  • 백준 15655
  • 백준 1064
  • 백준 10709
  • 백준 4659
  • 백준 16194
  • 백준 16926
  • 백준 12605
  • 백준 3049
  • 백준 1531
  • 백준 8892
  • 백준 15961
  • 백준 15312
  • 백준 2591
  • 백준 2343
  • 백준 12871
  • 백준 2225
  • 백준 1747
  • 백준 1914
  • 백준
  • 백준 1011
  • 자바
hELLO · Designed By 정상우.
Park DJ

dj0998

백준 2846 오르막길(Java)
백준

백준 2846 오르막길(Java)

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);
  }
}

'백준' 카테고리의 다른 글

백준 11557 Yangjojang of The Year(Java)  (0) 2023.01.17
백준 9506 약수들의 합(Java)  (0) 2023.01.17
백준 10448 유레카 이론(Java)  (0) 2023.01.17
백준 2669 직사각형 네개의 합집합의 면적 구하기(Java)  (0) 2023.01.16
백준 2851 슈퍼 마리오(Java)  (0) 2023.01.16
    '백준' 카테고리의 다른 글
    • 백준 11557 Yangjojang of The Year(Java)
    • 백준 9506 약수들의 합(Java)
    • 백준 10448 유레카 이론(Java)
    • 백준 2669 직사각형 네개의 합집합의 면적 구하기(Java)
    Park DJ
    Park DJ

    티스토리툴바