반응형

백준 브루트 포스 2

백준 4673 셀프 넘버 (파이썬)

수학, 구현, 브루트 포스 문제 : https://www.acmicpc.net/problem/4673 제출 코드 import sys print = sys.stdout.write check = [0] * (10001) for i in range(1, 10001): string = str(i) temp = i for j in string: temp += int(j) if temp < 10001: check[temp] = 1 for i in range(1, 10001): if not check[i]: print(f"{i}\n") 결과 및 정리 처음에 문제가 단순한 수학 함수여서 쉽게 풀 수 있을 줄 알았습니다. 하지만 10 이하의 셀프넘버 중 2, 4, 6, 8이 안되는 이유를 못찾았습니다. 그런데 자기 자신..

백준 17142 연구소 3 (Python)

문제 출처: https://www.acmicpc.net/problem/17142 나의 접근법 먼저 바이러스 중에서 M개를 선택하는 조합의 경우를 모두 구합니다. 그리고 난 뒤 그래프의 모든 곳을 방문해야 하는데 이를 위해 DFS와 BFS중 무엇을 사용할지 고민 했습니다. 구현을 바로 하기 전에 먼저 DFS로 머리 속에서 시뮬레이션을 돌려봤습니다. 1. DFS로 할 경우 첫번째로 선택한 바이러스의 위치가 모든 곳을 탐색하고 이동할 때 마다 시간을 적습니다. 2. 그 다음 바이러스가 탐색할 때 첫번째 바이러스가 저장한 장소 중 자신이 탐색하는 시간보다 큰 경우에만 탐색을 하며 시간을 업데이트 합니다. 위 방식으로 하게 되면 불필요한 계산이 생기고 방문했던 곳을 또 방문하게 된다면 visited 판단에서 에러..

1
반응형