본문 바로가기

전체 글

(158)
[백준/2178/파이썬] 미로탐색 소스코드 from collections import deque N, M = map(int, input().split()) graph = [] for _ in range(N): graph.append(list(map(int, input()))) def bfs(x, y): dx = [-1, 1, 0, 0] dy = [0, 0, -1, 1] queue = deque() queue.append((x, y)) while queue: x, y = queue.popleft() for i in range(4): nx = x + dx[i] ny = y + dy[i] if nx = N or ny = M: # 위치가 벗어나면 안됨 continue if graph[nx][ny] == 0: # 벽은 이동 X continue i..
[백준/2644/파이썬] 촌수계산 소스코드 N = int(input()) A, B = map(int, input().split()) M = int(input()) graph = [[] for _ in range(N+1)] visited = [False] * (N+1) result = [0] * (N+1) for _ in range(M): x, y = map(int, input().split()) graph[x].append(y) graph[y].append(x) def dfs(v): visited[v] = True for i in graph[v]: if not visited[i]: result[i] = result[v] + 1 dfs(i) dfs(A) if result[B]>0: print(result[B]) else: print(-1)..
[백준 7569/파이썬] 토마토 소스코드 import sys from collections import deque m,n,h = map(int,input().split()) graph = [] queue = deque([]) for i in range(h): tmp = [] for j in range(n): tmp.append(list(map(int,sys.stdin.readline().split()))) for k in range(m): if tmp[j][k]==1: queue.append([i,j,k]) graph.append(tmp) dx = [-1,1,0,0,0,0] dy = [0,0,1,-1,0,0] dz = [0,0,0,0,1,-1] while(queue): x,y,z = queue.popleft() for i in rang..
[백준 9012/파이썬] 괄호 소스코드 #백준 9012 괄호문제 N = int(input()) #N개 입력받기 stack = [] compare_stack = [] for i in range (N): ps = input() for j in range (len(ps)): stack.append([]) #2차원 배열로 스택 구현 stack[i].append(ps[j]) #스택에 추가 for i in range (N): ans = 0 while (len(stack[i])) : if (stack[i][-1]==')') : #스택에 꺼낼게 )면 compare_stack.append(stack[i].pop()) #스택에 있는걸 꺼내서 비교 스택에 삽입 elif (stack[i][-1]=='(') : #스택에 꺼낼게 (면 if len(compar..
[백준 1181/파이썬] 단어정렬/sort()/lamda() 소스코드 N = int(input()) wordlist = [] for i in range (N): word = input() wordlist.append(word) wordlist = list(set(wordlist)) wordlist.sort() wordlist.sort(key=lambda x : len(x)) for i in range (len(wordlist)): print(wordlist[i]) 문제 해결 알고리즘 1. 중복 제거 list() -> set() -> list()형 변환 2. 파이썬 내장함수 sort() 사용 [sort() 함수] 기본형태 : 정리하고싶은리스트.sort() 입력된 숫자나 문자를 오름차순으로 정렬해주는 함수입니다. 만약 내림차순으로 정리하고 싶으면 sort(revers..
[Django] 초기 파일 역할 생성 시 들어있는 파일들이 하는 역할 ★Project Root (django 프로젝트의 모든 파일이 담겨있는 최상위 디렉토리) manage.py - Django 프로젝트 관리를 위한 명령어를 지원 - 앱(App)생성, 데이터베이스 관련 명령, 개발서버 실행 db.sqlite3 - 프로젝트에서 사용하는 데이터베이스 파일 ★Project App (Project의 가장 중심이 되는 App) __init__.py - python 패키지로 인식하기 위해서 필요(3.3버젼 이상부터는 없어도 됨) settings.py - 시간대 설정, 데이터베이스 엔진 설정, 여러 경로 설정 등 - Django 프로젝트의 전반적인 설정을 담당 urls.py - 유저가 사이트의 주소를 검색했을때 알맞는 url을 페이지로 연결해주는 역..