일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 알고리즘 공부
- iOS개발
- greedy algorithm
- Autolayout
- 오토레이아웃
- 백준온라인저지
- BFS
- Clean Architecture
- Algorithm
- Python
- error
- Android
- 파이썬 풀이
- ios
- 공부
- UIKit
- 파이썬
- 알고리즘
- Swift공부
- dfs
- swift
- 앱개발
- 안드로이드 공부
- 정렬
- Kotlin
- 그리디 알고리즘
- Level 1
- SwiftUI
- 백준 온라인 저지
- 프로그래머스
- Today
- Total
목록파이썬 (8)
Tori의 개발 공부

문제 파이썬 풀이 def solution(array, commands): answer = [] for i, j, k in commands : new_arr = array[i-1 : j] new_arr.sort() answer.append(new_arr[k-1]) return answer 배열을 인덱싱을 이용하면 쉽게 풀 수 있는 문제였다. i번째는 인덱스로 i-1이고 인덱싱에서 end는 포함하지 않기 때문에 (j-1) 번째에 +1을 해줘서 j까지로 잘라낸다. 그리고 파이썬의 sort()함수를 이용해 잘라낸 배열을 정렬해주었다. 그리고 k번째(인덱스 k-1) 값을 answer배열에 추가해주었다.

문제 파이썬 풀이 import re def solution(new_id): new_id = new_id.lower() #1단계 #2단계 new_id = re.sub('[=+,#/\?:^$@*※~&%!\(\)\[\]\\{\}]', '', new_id) #3단계 new_id = re.sub('[.]\.+','.',new_id) #4단계 new_id = new_id.strip('.') #5단계 if not new_id : new_id = "a" #6단계 if len(new_id) > 15 : new_id = new_id[0:15] if new_id[-1] == "." : new_id = new_id[:-1] #7단계 while len(new_id) < 3 : new_id += new_id[-1] answer ..
이분 탐색 이분 탐색이란? 정렬되어 있는 배열에서 탐색을 할 때, 탐색 범위를 반씩 나누어 탐색하는 방법 장단점 장점 : 하나하나 살펴보는 기존 탐색에 비해 훨씬 빠르다. 단점 : 정렬이 된 상태에서만 사용할 수 있어 사용하기 까다롭다. 이분 탐색 방법 데이터 배열을 정렬해준다. 정렬된 배열에서 왼쪽 끝 인덱스 : left, 오른쪽 끝 인덱스 : right를 이용해 중앙값 : mid를 찾는다. mid와 배열에서 찾고자 하는 값(target)을 비교한다. target이 나올 때까지 아래와 같은 탐색 과정을 반복한다 mid target : right를 mid-1로 이동시켜 왼쪽 구간 탐색 (left..

문제 파이썬 문제 풀이 동전의 개수를 최소로 하기 위해서는 가장 비싼 동전으로 최대한 바꾸고, 나머지에 대해 그다음 비싼 동전으로 바꿔가면서 나머지가 0이 되도록 하는 방법을 사용한다. import sys input = sys.stdin.readline N, K = list(map(int, input().rstrip().split())) coin = [] for i in range(N) : coin.append(int(input().rstrip())) coin.reverse() count = 0 for i in coin: if K == 0 : break count += (K // i) K %= i print(count) 가장 비싼 동전부터 접근하기 위해 오름차순으로 입력받은 동전을 reverse해줘 내림..