본문 바로가기

코딩테스트33

[백준][파이썬]18870번: 좌표 압축 문제 출처 : www.acmicpc.net/problem/18870 18870번: 좌표 압축 수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, ..., XN에 좌 www.acmicpc.net 내 풀이(시간초과) import sys input = sys.stdin.readline n = int(input()) arr = list(map(int, input().split())) arr2 = sorted(list(set(arr))) for i in arr: print(arr2.index(i), end = ' ') 내 풀이(성공) import.. 2021. 4. 14.
[백준][파이썬]11403번: 경로 찾기 문제 출처 : www.acmicpc.net/problem/11403 11403번: 경로 찾기 가중치 없는 방향 그래프 G가 주어졌을 때, 모든 정점 (i, j)에 대해서, i에서 j로 가는 경로가 있는지 없는지 구하는 프로그램을 작성하시오. www.acmicpc.net 내 풀이 각 정점마다 dfs를 돌면서 연결된 정점을 check에 방문처리해 준 후에 출력하도록 코드를 짰다. import sys input = sys.stdin.readline def dfs(v): for i in range(n): if check[i] == 0 and arr[v][i] == 1: check[i] = 1 dfs(i) n = int(input()) arr = [] for i in range(n): arr.append(list.. 2021. 4. 12.
[백준][파이썬]1260번: DFS와 BFS 문제 출처 : www.acmicpc.net/problem/1260 1260번: DFS와 BFS 첫째 줄에 정점의 개수 N(1 ≤ N ≤ 1,000), 간선의 개수 M(1 ≤ M ≤ 10,000), 탐색을 시작할 정점의 번호 V가 주어진다. 다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다. 어떤 두 정점 사 www.acmicpc.net 내 풀이 bfs와 dfs를 간단히 구현해보는 문제였다. import sys from collections import deque input = sys.stdin.readline def dfs(v): check[v] = 1 print(v, end = ' ') for i in range(1, n + 1): if check[i] == 0 and arr[v][i] =.. 2021. 4. 12.
[백준][파이썬]2775번: 부녀회장이 될테야 문제 출처 : www.acmicpc.net/problem/2775 2775번: 부녀회장이 될테야 첫 번째 줄에 Test case의 수 T가 주어진다. 그리고 각각의 케이스마다 입력으로 첫 번째 줄에 정수 k, 두 번째 줄에 정수 n이 주어진다 www.acmicpc.net 내 풀이 직접 그려보며 확인해본 결과 k층 n호에 사는 사람의 수는 (k층 n - 1 호에 사는 사람의 수) + (k - 1층 n호에 사는 사람의 수) 라는 규칙이 나왔다. import sys input = sys.stdin.readline t = int(input()) for i in range(t): k = int(input()) n = int(input()) arr = [[i for i in range(n + 1)] for _ in.. 2021. 4. 11.