만드는 중입니다

아직 만드는 중이라 바뀔 수 있습니다

가장 긴 비감소 구간

면접 대비

시간 제한2초메모리 제한512 MB

요약
수열에서 가장 긴 연속 비감소 구간을 찾아 그 길이와 원소의 합을 출력하며, 길이가 같으면 가장 앞에서 시작하는 구간을 고릅니다.
난이도

쉬움10점 중 3점

유형
배열, 구현, 투 포인터, 그리디
정답자
아직 제출이 없습니다

문제

구간은 리스트에서 연속으로 이어진 조각이다. 리스트 [1,2,3,4,5][1, 2, 3, 4, 5]에서 [1,2,3,4][1, 2, 3, 4], [2,3][2, 3], [3,4][3, 4]는 모두 구간이다. [1,3,4,5][1, 3, 4, 5]는 원래 리스트에서 1과 3이 붙어 있지 않으므로 구간이 아니다.

구간 안에 바로 앞 원소보다 작은 원소가 하나도 없으면 그 구간을 비감소 구간이라고 한다.

리스트 [3,1,2,4,2,2,3,6][3, 1, 2, 4, 2, 2, 3, 6]의 비감소 구간에는 다음이 있다.

  • [3][3], [1][1], [2][2], [4][4], [2][2], [2][2], [3][3], [6][6]. 원소가 하나면 값이 줄어들 수 없다.
  • [1,2,4][1, 2, 4]
  • [2,2,3,6][2, 2, 3, 6]

이 중 가장 긴 구간은 [2,2,3,6][2, 2, 3, 6]이고 길이는 4다.

가장 긴 비감소 구간의 길이와 그 구간에 속한 원소의 합을 구하라. 길이가 최대인 비감소 구간이 여러 개면 입력에서 가장 먼저 시작하는 구간을 답으로 삼는다.

입력

첫째 줄에 리스트의 크기 nn (1≤n≤1051 \le n \le 10^5)이 주어진다. 둘째 줄에 리스트의 원소 nn개가 공백으로 구분되어 주어진다. 각 원소는 11 이상 10910^9 이하의 정수다.

출력

정수 두 개를 공백 하나로 구분해 한 줄에 출력한다. 첫 번째 수는 가장 긴 비감소 구간의 길이이고 두 번째 수는 그 구간에 속한 원소의 합이다. 길이가 최대인 비감소 구간이 여러 개면 입력에서 가장 먼저 시작하는 구간의 길이와 합을 출력한다.

예제5

  1. 예제 1

    입력
    5
    1 2 3 4 5
    
    예상 출력
    5 15
    
  2. 예제 2

    입력
    9
    514 630 327 242 504 763 353 699 486
    
    예상 출력
    3 1509
    
  3. 예제 3

    입력
    7
    449 434 996 140 918 205 948
    
    예상 출력
    2 1430
    
  4. 예제 4

    입력
    5
    721 231 521 613 792
    
    예상 출력
    4 2157
    
  5. 예제 5

    입력
    8
    3 1 2 4 2 2 3 6
    
    예상 출력
    4 13