Logo
(追記) (追記ここまで)

28136번 - 원, 탁!

시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초 1024 MB161958349435.797%

문제

현빈이는 수열을 좋아한다. 그중에서도 오름차순으로 정렬된 수열이라면 단연코 환장한다.

선우는 수열과 수학을 사랑하는 현빈이를 골탕 먹이고자 현빈이에게 숫자가 적힌 접시가 원형으로 놓여있는 원탁을 내밀었다. 각 접시에는 시계방향으로 1ドル$부터 $N$까지 번호가 붙어있고, $i$번 접시에는 $a_{i}$가 적혀있다. $N$번 접시 다음에는 1ドル$번 접시가 등장함에 유의하자.

현빈이는 수열을 시계방향으로 읽고 있고, 원탁의 특성상 접시에 적혀있는 숫자를 시계방향으로 읽다 보면 숫자가 순환되기 때문에, 현빈이는 정렬된 상태를 볼 수 없다. 이에 현빈이는 몇 번의 원, 탁!을 계획한다. 원, 탁! 한 번은 다음의 과정을 의미한다.

인접한 두 접시 사이의 연결을 끊는다.

위의 그림에서 1ドル$이 적혀있는 접시를 1ドル$번 접시라고 한다면, 3ドル$번과 4ドル$번 접시의 연결을 끊고, 5ドル$번과 1ドル$번 접시의 연결을 끊어 $[1, 2, 4],\ [3, 5]$의 정렬된 2ドル$개의 수열을 얻을 수 있다.

원, 탁!을 하는 데에 힘들었던 운동 부족 현빈이는 원, 탁!의 횟수를 최소화하여 정렬된 수열을 얻어내고 싶어 한다. 여기서 정렬된 수열이란, 시계방향으로 보았을 때 오름차순으로 정렬된 수열을 말한다. 원탁에 놓인 접시들의 정보가 주어질 때, 현빈이가 최소 몇 번의 원, 탁!을 하면 원하는 수열을 얻어낼 수 있는지 알아내는 프로그램을 만들어 주자.

입력

첫 번째 줄에는 접시의 개수 $N(3 ≤ N ≤ 1\ 000\ 000)$이 주어진다.

두 번째 줄에는 공백을 구분으로 $a_{i}$가 주어진다. $(1 \leq i \leq N; 1 ≤ a_{i} ≤ 1,円 000,円 000)$

출력

최소 몇 번의 원, 탁!이 필요한지 출력한다.

제한

예제 입력 1

5
1 2 4 3 5

예제 출력 1

2

예제 입력 2

5
1 2 3 4 5

예제 출력 2

1

노트

오름차순 수열이란 뒤로 갈수록 숫자가 커지는 수열을 의미한다.

출처

University > 아주대학교 > 2023 아주대학교 프로그래밍 경시대회 APC > Div.2 C번

(追記) (追記ここまで)

출처

대학교 대회

  • 사업자 등록 번호: 541-88-00682
  • 대표자명: 최백준
  • 주소: 서울시 서초구 서초대로74길 29 서초파라곤 412호
  • 전화번호: 02-521-0487 (이메일로 연락 주세요)
  • 이메일: contacts@startlink.io
  • 통신판매신고번호: 제 2017-서울서초-2193 호

AltStyle によって変換されたページ (->オリジナル) /