[문제] 디딤돌의 내구도와 한번에 건널 수 있는 디딤돌의 갯수가 주어졌을 때 최대 몇명이 건널 수 있는지 계산하는 문제 입니다. 입출력 예시 : stones = [2, 4, 5, 3, 2, 1, 4, 2, 5, 1], k = 3 [풀이] 1. 아주 간단한 방법: 한명씩 건넌다고 치고 stones의 모든 원소값을 1씩 빼고 다시한번 0이하의 값이 연속되는지 확인합니다. 하지만 이 방법은 2중 for문으로 n^2의 시간복잡도가 소요됩니다. 원소의 최대값은 2억이고, 배열의 크기의 최대값은 20만이므로 n^2의 방법으로는 1초안에 풀이가 불가능합니다. 2. 이진탐색법의 LogN의 시간복잡도를 활용 몇명이 건널 수 있는지가 문제이기때문에 몇명인지를 이진탐색으로 탐색해서 구해보면 빠르게 구할 수 있을거 같습니다...
https://programmers.co.kr/learn/courses/30/lessons/42883 코딩테스트 연습 - 큰 수 만들기 programmers.co.kr 어떤 숫자에서 k개의 수를 제거했을 때 얻을 수 있는 가장 큰 숫자를 구하려 합니다. 예를 들어, 숫자 1924에서 수 두 개를 제거하면 [19, 12, 14, 92, 94, 24] 를 만들 수 있습니다. 이 중 가장 큰 숫자는 94 입니다. 풀이 방법 : 간단하게 앞에 있는 숫자(큰 자릿수)가 뒤에 있는 숫자(작은 자릿수)보다 작으면 앞에 있는 숫자를 지워주는 방식으로 풀었습니다. k개 만큼을 이러한 방식으로 지운 후 남은 number는 큰수가 앞, 작은수가 뒤로 정렬이 되어 있는 상태 이므로 뒤에서 부터 k개 만큼 줄인 후 return..
- Total
- Today
- Yesterday
- 문자열 뒤집기
- 독후감
- 백준
- for-else
- 방금그곡
- 의대 신경학 강의
- gunicorn
- dfs
- go
- 프로그래머스
- go context
- taggit
- sql lite
- 팰린드롬수
- query
- leetcode
- Python
- 파이썬
- django
- Two Scoops of Django
- ManyToMany
- 소프트웨어 장인
- conTeXt
- stdout
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |