Algorithm/백준

[백준 알고리즘] 14659번: 한조서열정리하고옴ㅋㅋ (Python)

에릭 Kim 2023. 6. 8. 15:11
반응형

https://www.acmicpc.net/problem/14659

 

14659번: 한조서열정리하고옴ㅋㅋ

첫째 줄에 봉우리의 수 겸 활잡이의 수 N이 주어진다. (1 ≤ N ≤ 30,000) 둘째 줄에 N개 봉우리의 높이가 왼쪽 봉우리부터 순서대로 주어진다. (1 ≤ 높이 ≤ 100,000) 각각 봉우리의 높이는 중복 없이

www.acmicpc.net

 

소스코드

 

 

풀이

★ python3으로 제출했을 때 50%에서 시간초과가 발생하였습니다. 그렇기에 pypy로 제출한 코드입니다 ! 

 

★ 배열 안의 원소 하나를 나머지 원소들과 대소비교해줍니다.

- for i in range(n):

      for j in range(i+1,n):

 

만약 해당 수가 배열 안의 수보다 크다면 용을 처치할 수 있는 봉우리에 있기 때문에 cnt를 1 증가시켜주고, 아니라면 자신보다 큰 봉우리를 만난 것이기에 반복문을 break 해준 뒤, cnt를 ans에 추가 해줍니다. 

 

★ 반복문이 끝났을 때 ans 배열에는 a 리스트의 인덱스 수대로 자신이 처치할 수 있는 용을 수가 기록되어 있습니다. 이 중 max 함수를 통해 가장 큰 값을 출력해주면 됩니다 ! 

반응형