전체 글

이것이 코딩테스트다. 182페이지문제이다. 시간체한이 2초인 문제였다. 아래는 나의 코드이다. import sys M,N= map(int,sys.stdin.readline().split()) A=list(map(int,sys.stdin.readline().split())) B=list(map(int,sys.stdin.readline().split())) for i in range(N): min_a= min(A) max_b= max(B) A.remove(min_a) A.append(max_b) B.remove(max_b) B.append(min_a) print(sum(A)) 시간이 꽤 걸리는 코드이다. 지금보니 N과 리스트 크기에 따라 시간초과가 날수도 있을 듯하다.... 아래는 예시코드이다. n, k =..
이 문제는 이것이 코딩테스트다. 180페이지 문제이다. sort함수의 key를 알면 쉽게 풀 수 있는 문제이다. 아래는 나의 코드이다. 입력받는 부분에서 순서만 바꿔주면 돼서 key를 사용하진 않았다. 하지만 어려운 문제에서는 key를 알면 많은 도움이 될 것이다. import sys N = int(sys.stdin.readline()) mylist=[] result=[] for i in range(N): temp=list(sys.stdin.readline().split()) mylist.append((int(temp[1]),temp[0])) mylist.sort() for i in mylist: result.append(i[1]) print(result) 아래에 sort() 함수에 대해 정리 해두었다...
아래는 sort함수의 사용법이다. 리스트.sort()로 사용한다. 숫자는 음수,0,양수 순으로 정렬을 해주고 문자는 대문자가 앞으로 소문자가 뒤로간다. sorted() sorted( , key = , reverse = ) # 뿐 아니라, , , 에도 사용 가능하다. 원본 내용을 바꾸지 않고, 정렬한 값을 반환한다. List, tuple, Dictionary, str에 모두 사용 가능하다. key 를 통하여 정렬할 기준을 정할 수 있다. reverse 가 True이면 내림차순, False이면 오름차순으로 정렬된다. arr = [10, 40, 20, 15] arr = sorted(arr, reverse = True) print(arr) >>>> [40, 20, 15, 10] sort() .sort(key =..
이것이 코딩테스트다 178페이지문제이다. 단순한 정렬 문제이다. sort함수를 쓰면 쉽게 구현 할 수 있다. 다만 sort함수는 기본적으로 오름차순이다. 설정을 바꾸어 주는 것이 이문제의 문제였다. 아래는 나의 코드 import sys N = int(sys.stdin.readline()) numbers=[] for i in range(N): numbers.append(int(sys.stdin.readline())) numbers.sort(reverse=True) print(numbers) 아래는 sort함수의 사용법이다. 리스트.sort()로 사용한다. 숫자는 음수,0,양수 순으로 정렬을 해주고 문자는 대문자가 앞으로 소문자가 뒤로간다. sorted() sorted( , key = , reverse = ..
· I leaned/Etc
REST란? REST는 Representational State Transfer라는 용어의 약자로서 2000년도에 로이 필딩(Roy Fielding)의 박사학위 논문에서 최초로 소개 되었다. https://www.ics.uci.edu/~fielding/pubs/dissertation/top.htm 로이 필딩은 HTTP의 주요 저자중 한 사람이다. 로이 핑딩은 당시 웹(HTTP) 설계의 우수성에 비해 제대로 사용되어지지 못하는 모습에 안타까워하며 웹의 장점을 최대한 활용할 수 있는 아키텍처로써 REST를 발표했다. REST는 기본적으로 웹의 기존 기술과 HTTP 프로토콜을 그대로 활용하기 때문에 웹의 장점을 최대한 활용할 수 있는 아키텍처 스타일이다. REST(Representational State Tr..
정의 트리 (Tree)란 노드들이 나무 가지처럼 연결된 비선형 계층적 자료구조입니다. 트리는 다음과 같이 나무를 거꾸로 뒤집어 놓은 모양과 유사합니다. 트리는 또한 트리 내에 다른 하위 트리가 있고 그 하위 트리 안에는 또 다른 하위 트리가 있는 재귀적 자료구조이기도 합니다. 컴퓨터의 direcory구조가 트리 구조의 대표적인 예가 될 수 있습니다. 트리 구조에서 사용되는 기본 용어 노드 (Node) 트리를 구성하고 있는 기본 요소 노드에는 키 또는 값과 하위 노드에 대한 포인터를 가지고 있음. A, B, C, D, E, F, G, H, I, J 간선 (Edge) 노드와 노드 간의 연결선 루트 노드 (Root Node) 트리 구조에서 부모가 없는 최상위 노드 root node : A 부모 노드 (Pare..
정의 및 장단점 BFS는 Breadth First Serach로 너비우선탐색이다. 쉽게 말해 가까운 노드부터 탐색하는 알고리즘이다. DFS는 최대한 멀리있는 노드를 찍고 돌아오고 멀리갔다가 돌아로는 탐색이다. BFS는 그 반대이다. 구현방법 BFS는 큐 자료구조를 이용한다. 큐를 이용하면 자연스럽게 먼저들어온것이 먼저 나가게 되어 가까운 노드부터 탐색을 진행하게 된다. 파이썬에서는 deque라이브러리를 이용한 큐 자료구조를 사용하는 것이 보편적이다. 시간복잡도는 O(N)의 시간이 소요된다. 일반적인 경우 실제 수행시간이 DFS보다 좋은편이다. 문제에 따라 DFS의 경우 무한굴레에 빠져 시간이 엄청 길어 질수 있다. 하지만 BFS는 가까운노드에서부터 점차적으로 넓혀가기 때문에 보다 안정적이다. 모든 경우의..
이 문제는 이것이 코딩테스트다. 152페이지 문제이다. BFS문제를 많이 다뤄 보지 않았어서 시간이 오래 소모 되었던 것같다. DFS,BFS는 양식이 거의 비슷하니깐 틀자체를 기본적으로 몸에 익혀야겠다. 아래는 나의 코드이다. import sys from collections import deque N,M = map(int,sys.stdin.readline().split()) myMap = [] visited=[[False]*M for _ in range(N)] moves = [[1,0],[0,1],[-1,0],[0,-1]] for i in range(N): temp=list(map(int,sys.stdin.readline().split()[0])) myMap.append(temp) def BFS(sta..
윤재에요
yunzae.log