Python

    개발형 코딩테스트

    서버와 클라이언트 클라이언트가 요청을 보내면 서버가 응답한다. 웹 클라이언트: PC, 노트북, 스마트폰 / 웹 서버: 워크스테이션 클라이언트 서버로 요청(Request)을 보내고 응답(Response)이 도착할 때까지 기다림 서버로부터 응답을 받은 뒤에는 서버의 응답을 화면에 출력한다. ex) 웹 브라우저: 서버로부터 받은 HTML, CSS코드를 화면에 적절한 형태로 출력한다. 서버 (서비스 제공자) 클라이언트에게 받은 요청(Request)을 처리하여 응답(Response)을 전송한다. ex) 웹 서버: 로그인 요청을 받아 아이디, 비밀번호가 정확한지 검사하고 결과를 응답한다. HTTP(HyperText Transfer Protocol) 웹 상에서 데이터를 주고받기 위한 프로토콜이다. 보통은 웹 문서(H..

    04/04

    람다 표현식 이용 식 형태로 되어 있고 함수를 간편하게 작성할 수 있어서 다른 함수의 인수로 넣을 때 주로 사용한다. // 기존 함수 작성 def plus_ten(x): return x+10 // lambda 표현식 lambda x: x+10 # 14469 소가길을건너간이유 (실버 4) #1 n = int(input()) arr = sorted([[*map(int, input().split())] for _ in range(n)]) time = 0 for i in range(n): x, y = arr[i] if time < x: time = x time += y print(time) #2 import sys n=int(sys.stdin.readline()) tmp=[] for i in range(n): ..

    03/28

    # 2606 바이러스 (실버 3) num = int(input()) pairs = int(input()) graph = [[0 for _ in range(num+1)] for _ in range(num+1)] # [[0 for i in range(col)] for j in range(row)] for _ in range(pairs): a,b = map(int, input().split()) # 1번, 2번 graph[a][b], graph[b][a] = 1,1 #worm = [] # 바이러스 컴퓨터 리스트 #worm.append(1) # 1번 걸림 #num = 0 # 1번 컴퓨터 인덱스 #def find(worm,num): # for i in graph[worm[num]]: # graph[1] # if ..

    탐색 알고리즘 DFS/ BFS

    탐색 알고리즘 DFS/ BFS

    스택 (LIFO / 선입후출) 박스 쌓기와 유사 입구와 출구가 동일한 형태로 시각화 할 수 있다. 리스트 자료형 이용 -> pop(), append() 사용 별도의 표준 라이브러리 필요 x stack = [] # 삽입(5) - 삽입(2) - 삽입(3) - 삽입(7) - 삭제() - 삽입(1) - 삽입(4) - 삭제() stack.append(5) stack.append(2) stack.append(3) stack.append(7) stack.pop() stack.append(1) stack.append(4) stack.pop() print(stack) # 최하단 원소부터 출력 [5,2,3,1] print(stack[::-1]) # 최상단 원소부터 출력 [1,3,2,5] 큐 (FIFO / 선입선출) 번호표..

    03/21

    03/21

    # 11048 이동하기 (실버1) 더보기 문제) 준규는 N×M 크기의 미로에 갇혀있다. 미로는 1×1크기의 방으로 나누어져 있고, 각 방에는 사탕이 놓여져 있다. 미로의 가장 왼쪽 윗 방은 (1, 1)이고, 가장 오른쪽 아랫 방은 (N, M)이다. 준규는 현재 (1, 1)에 있고, (N, M)으로 이동하려고 한다. 준규가 (r, c)에 있으면, (r+1, c), (r, c+1), (r+1, c+1)로 이동할 수 있고, 각 방을 방문할 때마다 방에 놓여져있는 사탕을 모두 가져갈 수 있다. 또, 미로 밖으로 나갈 수는 없다. 준규가 (N, M)으로 이동할 때, 가져올 수 있는 사탕 개수의 최댓값을 구하시오. 입력) 첫째 줄에 미로의 크기 N, M이 주어진다. (1 ≤ N, M ≤ 1,000) 둘째 줄부터 N..

    스택 / 큐

    스택 (LIFO / 후입선출) 박스쌓기에 비유 pop(), append() 로 마지막 자리 원소를 이용하여 데이터 삭제, 추가 수행 파이썬에서 스택을 이용할 때는 별도의 라이브러리 사용할 필요x, 기본 리스트에서 append()와 pop()을 이용하면 스택 자료구조와 동일하게 동작한다. 큐 (FIFO / 선입선출) 대기줄에 비유 ('공정한' 자료구조) 파이썬으로 큐를 구현할 때는 collections 모듈에서 제공하는 deque 자료구조를 활용한다. deque는 스택과 큐의 장점을 모두 채택한 것인데 데이터를 넣고 빼는 속도가 리스트 자료형에 비해 효율적이며, queue 라이브러리를 이용하는 것보다 더 간단하다. deque 객체를 리스트 자료형으로 변경하려면 list() 메서드를 이용하면 된다. ex) ..

    파이썬 기초 문법

    파이썬 기초 문법

    조건문 (if 분기문, 다중 if문) 1) if x>0 and x [1,2,3,7,4,5] a.pop(3) // 3번 인덱스값을 내보내! -> [1,2,3,4,5] a.remove(4) // 4라는 값을 제거해! -> [1,2,3,5] a.index(5) // 5의 인덱스번호를 찾아! -> 3 sum(a) // 리스트 값을 전부 합해! -> 11 max(a) // 리스트 값 중 제일 큰 값 -> 5 min(7,3,5) // 7,3,5중에 가장 작은 값 -> 3 r.shuffle(a) // 리스트 값들을 전부 섞어! -> [3,5,1,2] a.sort() // 오름차순 정렬 -> [1,2,3,5] a.sort(reverse=True) // 내림차순 정렬 -> [5,3,2,1] a.clear() // 리스트..