https://school.programmers.co.kr/learn/courses/30/lessons/42587 > git 바로가기 1. idx 수동 증가 및 판별 내가 짜서 내가 제출하고 통과를 했다지만 코드가 참 가독성이 없다.... 단순한 아이디어로 idx를 0부터 순차적으로 증가해가면서 다음idx부터 최대값이 있는지 확인하고 현재 idx의 value값이 최대값이 아니라면 제일 뒤에 다시 append하고, 현재 idx의 value값이 최대값이면 idx를 1증가시키고 location을 확인하는 구조이다. 2. Queue 개선과 ldx와 location 확인방법 및 생성 방법 개선 완벽한 정답이라고 할 수는 없지만, Queue를 적
https://school.programmers.co.kr/learn/courses/30/lessons/42586 > [git] https://github.com/JungSangA/Algorithm_Study/blob/main/%EC%8A%A4%ED%83%9D%26%ED%81%90/%EA%B8%B0%EB%8A%A5%20%EA%B0%9C%EB%B0%9C.ipynb 1. idx 순차증가 비교를 통한 풀이 progress의 남은 퍼센트와 speeds를 나누어 남은 일수를 계산한다.(math.ceil을 통해 소수점이 있으면 올림을 통해 남은 일수를 계산하는 것이 핵심이다.) >[math.ceil 함수 정리] https://velog.io/@jsanga214/%EC%BD%94%ED%85%8C%EC%A4%80%EB%B9%84-math idx를 0으로 고정하고 for문을 통해 0부터 순차적으로 증가하면서 idx와 크기 비교를 진행한다. idx보다 fo
list에서 idx를 알아내거나 요소를 반환할때 시간복잡도는 O(n)이다. deque 라이브러리를 만들어서 stack 및 queue로 활용한다면 시간복잡도를 O(1)으로 줄일 수 있어 코딩테스트를 푸는데 있어 시간 개선의 효과가 있고 효율성이 있는 문제의 효율성을 높일 수 있다. 1. deque 1-1. deque import하기 1-2 deque로 요소 추가 및 반환하기 1-3 deque로 list 통째로 넣기 리스트 요소를 하나하나 넣을 때 필요함. 단 오름차순으로 들어감. 1-4 deque로 요소 회전시키기 deque 내 요소들을 기준으로 회전시킬 수 있다. (양수 = 시계방향, 음수 = 반시계방향) 2. list 각종 해결방안 2-1. list 내 중복값 제거하기 set명령어를 활용하면 중복된 값을 제거하고 unique하게 set 타입으로 반환해준다. 그리고 list로 다시 변환하여 사용하면 간편하다.