코딩테스트/백준[Python]

백준 파이썬 코딩테스트 문제 풀이
문제 11725번: 트리의 부모 찾기 루트 없는 트리가 주어진다. 이때, 트리의 루트를 1이라고 정했을 때, 각 노드의 부모를 구하는 프로그램을 작성하시오. www.acmicpc.net 코드 My answer import sys from collections import deque input= sys.stdin.readline def bfs(idx): Q=deque() Q.append(idx) visited[idx]=1 while Q: a=Q.popleft() for i in graph[a]: if(visited[i]==0): parents[i]=a Q.append(i) visited[i]=1 return 0 n=int(input()) graph=[[] for _ in range(n+1)] visited..
문제 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net 코드 My answer import sys from collections import deque input= sys.stdin.readline n,m,v=map(int,input().split()) graph=[[] for _ in range(n+1)] visited=[0 for i in range(n+1)] answer1,answer2=[],[] for i in range(m): a,b=map(int,input().s..
문제 2606번: 바이러스 첫째 줄에는 컴퓨터의 수가 주어진다. 컴퓨터의 수는 100 이하인 양의 정수이고 각 컴퓨터에는 1번 부터 차례대로 번호가 매겨진다. 둘째 줄에는 네트워크 상에서 직접 연결되어 있는 컴퓨터 쌍 www.acmicpc.net 코드 My answer import sys input= sys.stdin.readline def dfs(new_d): for i in new_d: if(visited[i]==0): visited[i]=1 dfs(d[i]) return True n=int(input()) connect=int(input()) visited=[0 for i in range(n+1)] d=[[] for _ in range(n+1)] for i in range(connect): a,b=..
문제 2979번: 트럭 주차 첫째 줄에 문제에서 설명한 주차 요금 A, B, C가 주어진다. (1 ≤ C ≤ B ≤ A ≤ 100) 다음 세 개 줄에는 두 정수가 주어진다. 이 정수는 상근이가 가지고 있는 트럭이 주차장에 도착한 시간과 주차장 www.acmicpc.net 코드 My answer import sys input=sys.stdin.readline answer=0 price=list(map(int,input().split())) count_list=[0 for i in range(100)] for i in range(3): a,b=map(int,input().split()) for j in range(a,b): count_list[j]+=1 for i in range(3): answer+=pri..
문제 11501번: 주식 입력의 첫 줄에는 테스트케이스 수를 나타내는 자연수 T가 주어진다. 각 테스트케이스 별로 첫 줄에는 날의 수를 나타내는 자연수 N(2 ≤ N ≤ 1,000,000)이 주어지고, 둘째 줄에는 날 별 주가를 나타 www.acmicpc.net 코드 My answer(시간초과) import sys input=sys.stdin.readline n=int(input()) for i in range(n): day=int(input()) price=list(map(int,input().split())) profit,num=0,0 for j in range(len(price)): if(price[j]==max(price[j:])): profit+=(num*price[j]) num=0 else: ..
문제 21314번: 민겸 수 민겸 수 하나가 주어진다. 민겸 수는 대문자 M과 K로만 이루어진 문자열이며, 길이는 3,000을 넘지 않는다. www.acmicpc.net 코드 My answer import sys input=sys.stdin.readline a=input()[:-1] temp=[] max_n='' min_n=a.split('K') for i in range(len(a)): if(a[i]=='M'):temp.append(a[i]) else: if(temp==[]):max_n+='5' else: max_n=max_n+'5'+('0'*(len(temp))) temp=[] if(temp!=[]):max_n=max_n+('1'*len(temp)) for i in range(len(min_n)): ..
창빵맨
'코딩테스트/백준[Python]' 카테고리의 글 목록 (7 Page)