일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- Git
- Bruteforce
- permutations
- stateful
- pytest
- combinations
- ORM
- ws
- Stack
- stack&que
- Gunicorn
- AWS
- postreSQL
- Python
- algorithm
- Programmers
- 백준
- Query
- Django
- Q objects
- stateless
- HTTP 완벽 가이드
- greedy
- Unit Testing
- codecov
- utils
- TDD
- was
- dictionary
- SQL
- Today
- Total
목록algorithm (28)
해피 코딩!
문제 링크 lst = [] for i in range(int(input())): age, name = input().split(' ') lst.append([int(age), name, i]) for i in sorted(lst, key = lambda x:(x[0], x[2])): print(i[0], i[1]) python은 내장 정렬 라이브러리로 list_data_type_var.sort()와 sorted(iterable_data_type_var)를 지원하며 key를 통해 정렬하는 순서를 설정할 수 있다. .sort(): 참조하는 리스트의 메모리 값 자체가 정렬이 된다. 리스트 데이터 타입에서만 지원 sorted(): 정렬된 값을 돌려준다. iterable 한 데이터 타입 자체를 지원..
n = int(input()) lst =[] var = 0 while n > var: m = var for i in str(m): m+=int(i) if m == n: lst.append(var) var+=1 if lst: print(min(lst)) else: print(0) 생성자가 없는 경우에는 0을 출력한다. 여러개인 경우 가장 작은 생성자를 출력한다.
문제 링크 # 해결 코드 def solution(people, limit): people.sort(reverse=True) answer= 0 lst_cnt = len(people)-1 while answer
문제 링크 import sys def solution(lst): lst.sort() length = len(lst) max_w = 0 for index, rope in enumerate(lst): w = rope *(length-index) lst[index] = w lst = sorted(lst) return lst[-1] limit = int(sys.stdin.readline()) lst = [0] * limit for index in range(limit): lst[index]= (int(sys.stdin.readline())) print(solution(lst)) 문제에서 입력에 대하여 sys.stdin.readlint()을 사용하였을 때와 input()을 사용하였을 때 속도의 차이가 현저하게 났..
문제 링크 def solution(lst): cnt = 1 lst.sort(key = lambda x:(x[1], x[0])) end_time = lst[0][1] for i in range(1, len(lst)): if lst[i][0] >= end_time: cnt+=1 end_time = lst[i][1] return cnt lst = [] limit = int(input()) for _ in range(limit): lst.append(list(map(int, input().split(' ')))) print(solution(lst)) 탐욕 알고리즘의 쉬운 접근 방식이 아직 숙달되지 않은 것 같다. 문제를 너무 어렵게 생각하는 경향이 있으며, 다른 사람의 코드를 보았을 때 문제를 해..
def coin_0(wallet, value): cnt = 0 for index, data in enumerate(wallet): if data
link length, remove_point = map(int, input().split()) lst = [i for i in range(1, length+1)] answer = [] index = 1 while lst: if index == remove_point: answer.append(lst.pop(0)) index = 1 continue else: index+=1 lst.append(lst.pop(0)) result = '' print(result)