파이썬 성공
자바 실패 (정수 범위의 문제인지 실패한다)😥
처음에 매번 sort()를 해줬다가 시간 초과가 났다.
다른 분들 글을 보고 이진탐색으로 해결한 방법과 Countring Sort를 이용한 방식이 있다는 것을 알게 되었고 두가지 방법을 이용해서 풀어봤다
계수정렬에 대해 아래에 새롭게 배운 내용을 정리했으나 막상 문제를 풀 때에는 누적 인덱스에 대한 배열을 새로 만들지 않고 기존 동빈북에서 배웠던 방식을 활용했다.
계수 정렬을 공부하다가 https://www.youtube.com/watch?v=OKd534EWcdk 이것을 보고 헷갈렸다. 기존에 내가 알던 계수정렬과 달랐기 때문
arr[0] = 1
, 이고 1이 2번 등장했다면 arr[1] = 1 + 2 = 3
이다 arr[0] = 1
이므로 '0'이라는 값은 새롭게 정렬 때 배열의 첫번째 인덱스에 들어간다. sortedArray[0] = 0
arr[1] = 3
이므로 세번째 인덱스에 들어가게 된다. sortedArray[2] = 1
(세번째 인덱스는 2) arr[1] = 2
로 바꿔준다sortedArray[1] = 1
이 된다. sortedArray = {0, 1, 1}
https://docs.python.org/3/library/functions.html#enumerate
number = [2,3,4,5]
for i, v in enumerate(number, 2):
print(i, v)
결과
2 2
3 3
4 4
5 5
해당 자료에 알맞은 위치에 값을 넣어준다
https://docs.python.org/3/library/bisect.html