문제 풀이/[BaekJoon]88 [BaekJoon] 11724번 연결 요소의 개수 (Silver 2) - Python 문제 방향 없는 그래프가 주어졌을 때, 연결 요소 (Connected Component)의 개수를 구하는 프로그램을 작성하시오. 입출력 예시 입력: 첫째 줄에 정점의 개수 N과 간선의 개수 M이 주어진다. (1 ≤ N ≤ 1,000, 0 ≤ M ≤ N×(N-1)/2) 둘째 줄부터 M개의 줄에 간선의 양 끝점 u와 v가 주어진다.(1 ≤ u, v ≤ N, u ≠ v) 같은 간선은 한 번만 주어진다. 출력: 첫째 줄에 연결 요소의 개수를 출력한다. 예제입력1) 6 5 1 2 2 5 5 1 3 4 4 6 예제출력1) 2 예제입력2) 6 8 1 2 2 5 5 1 3 4 4 6 5 4 2 4 2 3 예제출력2) 1 코드 import sys # 재귀호출 깊이 설정과 input함수 재정의를 위해 import sys... 2022. 12. 20. [BaekJoon] 3711번 학번 (Silver 5) - Python 문제 Z 대학교 학생은 입학할 때 학번을 받게 된다. 학번은 0보다 크거나 같고, 10^6 - 1 보다 작거나 같은 정수이다. Z 대학의 김상근 교수는 학번으로 학생들을 구분한다. 상근이는 학생들을 조금 더 쉽게 기억하기 위해서 자신이 가르치는 학생들의 학번을 m으로 나누었을 때, 나머지가 모두 다른 가장 작은 양의 정수를 찾으려고 한다. 입출력 예시 입력: 첫째 줄에 테스트 케이스의 개수 N이 주어진다. 각 테스트 케이스의 첫째 줄에는 상근이가 가르치는 학생의 수 G가(1 ≤ G ≤ 300) 주어진다. 다음 G개 줄에는 학생의 학번이 한 줄에 하나씩 주어진다. 학번이 같은 경우는 없다. 출력: 각 테스트 케이스마다, 학번을 m으로 나눈 나머지가 모두 다른 가장 작은 정수 m을 출력한다. 예제입력1) 2.. 2022. 12. 19. [BaekJoon] 11726번 2×n 타일링 (Silver 3) - Python 문제 2xn크기의 직사각형을 1x2, 2x1 타일로 채우는 방법의 수를 구하는 프로그램을 작성하시오. 아래 그림은 2x5 크기의 작사각형을 채운 한 가지 방법의 예이다. 입출력 예시 입력: 첫째 줄에 n이 주어진다. (1 ≤ n ≤ 1,000) 출력: 첫째 줄에 2xn 크기의 직사각형을 채우는 방법의 수를 10,007로 나눈 나머지를 출력한다. 코드 a = int(input()) # 입력 받는다 result = [0 for _ in range(0, 1001)] # 1000의 길이를 갖는 리스트를 미리 선언한다. result[1] = 1 # n = 1일때의 경우의수는 1 result[2] = 2 # n = 2일때의 경우의수는 2 for i in range(3, 1001): # n = 3부터 n = 1000.. 2022. 12. 18. [BaekJoon] 9095번 1, 2, 3 더하기 (Silver 3) - Python 문제 정수 4를 1, 2, 3의 합으로 나타내는 방법은 총 7가지가 있다. 합을 나타낼 때는 수를 1개 이상 사용해야 한다. 1+1+1+1 1+1+2 1+2+1 2+1+1 2+2 1+3 3+1 정수 n이 주어졌을 때, n을 1, 2, 3의 합으로 나타내는 방법의수를 구하는 프로그램을 작성하시오. 입출력 예시 입력: 첫째 줄에 테스트 케이스의 개수 T가 주어진다. 각 테스트 케이스는 한 줄로 이루어져 있고, 정수 n이 주어진다. n은 양수이며 11보다 작다. 출력: 각 테스트 케이스마다, n을 1, 2, 3의 합으로 나타내는 방법의 수를 출력한다. 예제 입력1) 3 4 7 10 예제 출력1) 7 44 274 코드 # dp함수 작성 def dp(n: int) -> int: if n == 1: return 1.. 2022. 12. 17. 이전 1 ··· 5 6 7 8 다음 728x90