728x90 트리15 [python] 백준 5052 전화번호 목록 https://www.acmicpc.net/problem/5052 5052번: 전화번호 목록 첫째 줄에 테스트 케이스의 개수 t가 주어진다. (1 ≤ t ≤ 50) 각 테스트 케이스의 첫째 줄에는 전화번호의 수 n이 주어진다. (1 ≤ n ≤ 10000) 다음 n개의 줄에는 목록에 포함되어 있는 전화번호가 www.acmicpc.net 문제 해결 최대한 비교를 적게 하기 위해 문자열을 올림차순으로 정렬해서 이전 것이 다음 원소 안에 포함되는 것이 있는지 확인하면 된다는 것을 쉽게 알 수 있다. CODE t = int(input()) for _ in range(t): n = int(input()) result = [] for i in range(n): x = str(input().rstrip()) resul.. 2023. 4. 9. [python] 백준 16940 BFS 스페셜 저지 https://www.acmicpc.net/problem/16940 16940번: BFS 스페셜 저지 올바른 순서는 1, 2, 3, 4와 1, 3, 2, 4가 있다. www.acmicpc.net 문제 해결 단순한 BFS 문제 + 순서가 여러가지 나올 수 있는 경우를 visited 리스트를 통해 체크해서 주어진 순서와 비교 chlldren 집합을 통해 그 순서에 나올 수 있는 경우를 모두 넣어 안에 들어있으면 pass 아니면 0을 출력하고 코드를 끝낸다. n까지 나열 한 것이므로 index=n까지 경우의 수 안에 들어 있으면 1을 출력한다. CODE import sys input = sys.stdin.readline from collections import deque n = int(input()) gra.. 2023. 1. 25. [python] 백준 13023 ABCDE https://www.acmicpc.net/problem/13023 13023번: ABCDE 문제의 조건에 맞는 A, B, C, D, E가 존재하면 1을 없으면 0을 출력한다. www.acmicpc.net 문제 해결 bidirectical graph 가 4개가 연결되어있는 것이 하나라도 있으면 1을 출력하고 아니면 0을 출력 따라서 그래프가 이어지는 횟수가 4개가 되면 1을 출력하도록 하고 한번도 체크가 안되면 0을 출력하도록 하면 된다. visited 리스트를 만들어 방문했던 곳은 중복으로 방문하지 않도록 한다. CODE import sys input = sys.stdin.readline n, m = map(int, input().split()) graph = [[] for _ in range(n)] .. 2023. 1. 22. [python] 백준 9372 상근이의 여행 https://www.acmicpc.net/problem/9372 9372번: 상근이의 여행 첫 번째 줄에는 테스트 케이스의 수 T(T ≤ 100)가 주어지고, 각 테스트 케이스마다 다음과 같은 정보가 주어진다. 첫 번째 줄에는 국가의 수 N(2 ≤ N ≤ 1 000)과 비행기의 종류 M(1 ≤ M ≤ 10 000) 가 www.acmicpc.net 문제 해결 사실 cnt를 두고 한 번 이동할 때 마다 +1을 해서 정답을 출력했다가 계속 틀렸다. 틀린 이유는 알고 보니 문제를 잘 못 봐서인데 바로 '가장 적은 종류의 비행기를 타고 국가를 이동했을 때 비행기 종류의 수'를 출력 하는 문제이기 때문이다. 답은 무조건 n-1이다. 왜나하면 길이 없어서 왕복할 때는 똑같은 종류의 비행기를 타고 이동하면 되기 때문.. 2023. 1. 5. 이전 1 2 3 4 다음 728x90