본문 바로가기

Algorithm89

[백준] 2644번 촌수계산 전에 풀었던 BFS 문제에 미로찾기 코드를 조금 섞어서 풀었다 from collections import deque N = int(input()) start, end = map(int, input().split()) M = int(input()) graph = [set([]) for i in range(N + 1)] def bfs(graph, start, end): visited = [] que = deque([start]) qc = deque([0]) counter = 0 while que: node = que.popleft() c = qc.popleft() if node in visited: continue if node == end: counter = c break if node not in vis.. 2020. 9. 8.
[백준] 1926번 그림 어이없게.. 테스트 케이스중 1 1 0 이걸 예외처리를 멍청하게 해서.. 엄청 헤멘... 문제.. 문제는 사실상 단지 번호 붙히기랑 똑같아서 바로 풀 줄 알았으나... 아니였다... from queue import Queue N, M = map(int, input().split()) mapData = [list(map(int, input().split())) for _ in range(N)] visited = [[0] * M for _ in range(N)] direction = [[-1, 0], [1, 0], [0, 1], [0, -1]] counter = [] def bfs(x, y): que = Queue() que.put([x,y]) visited[x][y] = 1 count = 1 while n.. 2020. 9. 7.
[백준] 10809번 알파벳 찾기 쉬운 문제 ans = [ -1 for i in range(26) ] x = input() for i in range(len(x)): if ans[ord(x[i])- 97] == -1: ans[ord(x[i])- 97] = i for i in range(len(ans)): print(ans[i], end=' ') 2020. 9. 4.
[백준] 단어 공부 쉬운 문제 아스키 코드에 대한 약간의 개념만 있으면 풀 수 있음 ans = [ 0 for i in range(26) ] x = input() x = x.lower() for i in range(len(x)): ans[ord(x[i])- 97] = ans[ord(x[i])- 97] + 1 if ans.count(max(ans)) > 1: print("?") else: print(chr(ans.index(max(ans)) + 97).upper()) 2020. 9. 4.