본문 바로가기

분류 전체보기

(270)
맥북 M1 이클립스 eclipse 재설치 예전에는 어떻게 했는지, 다시 해보려고 하니 뭔가 문제가 생겨 이클립스를 재설치했다. 완벽하게 지워지지 않아 문제가 발생했는지, 자꾸 에러가 떠서 기록하는 해결 방법 에러 1. 이클립스에서 Spring IDE Security Extension 설치 시 의존성 문제 발생 Cannot complete the install because one or more required items could not be found. Software being installed: Spring IDE Security Extension (optional) 3.9.15.202012132325-RELEASE (org.springframework.ide.eclipse.security.feature.feature.group 3.9.1..
백준 1135 뉴스 전하기 파이썬 풀이 난이도 : 골드2 풀이일 : 2403251 https://www.acmicpc.net/problem/1135 1135번: 뉴스 전하기 민식이는 회사의 매니저이다. 그리고, 민식이는 회사의 중요한 뉴스를 모든 직원에게 빠르게 전달하려고 한다. 민식이의 회사는 트리 구조이다. 모든 직원은 정확하게 한 명의 직속 상사가 있다 www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이코드 import sys def dp(n): # 이전에 검사한 적이 있다면 검사 결과 반환 종료 if time[n] > -1: return time[n] # 해당 노드의 자식이 없다면 0 저장 후 0 반환 종료 if not children[n]: time[n] = 0 return 0 # 모든 자식 노드 방문 소..
백준 1202 보석 도둑 파이썬 풀이 난이도 : 골드2 풀이일 : 2403247 https://www.acmicpc.net/problem/1202 1202번: 보석 도둑 첫째 줄에 N과 K가 주어진다. (1 ≤ N, K ≤ 300,000) 다음 N개 줄에는 각 보석의 정보 Mi와 Vi가 주어진다. (0 ≤ Mi, Vi ≤ 1,000,000) 다음 K개 줄에는 가방에 담을 수 있는 최대 무게 Ci가 주어진다. (1 ≤ Ci www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 오답 코드 -> 3% 틀렸습니다. import sys, heapq N, K = list(map(int, sys.stdin.readline().split())) jewels = [] bags = [] value = [] for _ in range(N)..
백준 13904 과제 파이썬 풀이 난이도 : 골드3 풀이일 : 2403192 https://www.acmicpc.net/problem/13904 13904번: 과제 예제에서 다섯 번째, 네 번째, 두 번째, 첫 번째, 일곱 번째 과제 순으로 수행하고, 세 번째, 여섯 번째 과제를 포기하면 185점을 얻을 수 있다. www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이코드 import sys, heapq N = int(sys.stdin.readline()) queue = [] # 마감일 우선 과제 정보 정렬 total = [] # 점수 낮은순 정렬 for _ in range(N): limit, score = map(int, sys.stdin.readline().split()) heapq.heappush(queue..
백준 9466 텀 프로젝트 파이썬 풀이 난이도 : 골드3 풀이일 : 2401281 https://www.acmicpc.net/problem/9466 9466번: 텀 프로젝트 이번 가을학기에 '문제 해결' 강의를 신청한 학생들은 텀 프로젝트를 수행해야 한다. 프로젝트 팀원 수에는 제한이 없다. 심지어 모든 학생들이 동일한 팀의 팀원인 경우와 같이 한 팀만 있을 www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이코드 import sys from collections import deque # 사이클 확인 def iscycle(n): # 지목된 학생들 team = dict() team[n] = 0 queue = deque([(n, 0)]) check[n] = True while queue: x, idx = queue.p..
백준 10815 숫자 카드 자바스크립트 풀이 난이도 : 실버5 풀이일 : 2403166 https://www.acmicpc.net/problem/10815 10815번: 숫자 카드 첫째 줄에 상근이가 가지고 있는 숫자 카드의 개수 N(1 ≤ N ≤ 500,000)이 주어진다. 둘째 줄에는 숫자 카드에 적혀있는 정수가 주어진다. 숫자 카드에 적혀있는 수는 -10,000,000보다 크거나 같고, 10, www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이 코드 let input = require('fs').readFileSync('/dev/stdin').toString().split('\n'); const N = parseInt(input[0]); // 카드를 저장할 배열 const set = new Set(); // 가지고..
백준 2845 파티가 끝나고 난 뒤 자바스크립트 풀이 난이도 : 브론즈4 풀이일 : 2403144 https://www.acmicpc.net/problem/2845 2845번: 파티가 끝나고 난 뒤 파티가 끝나고 나면, 사람들은 누가 파티에 왔는지와 얼마나 많은 사람들이 왔는지를 궁금해한다. 보통 파티는 매우 크게 열리기 때문에, 정확하게 몇 명이 참가했는지 알 수가 없다. 지난주 토 www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이 코드 let input = require('fs').readFileSync('/dev/stdin').toString().split('\n'); var [L, P] = input[0].split(' ').map(Number); var people = L * P; var news = input[1]...
백준 1520 내리막 길 파이썬 풀이 난이도 : 골드3 풀이일 : 2403133 https://www.acmicpc.net/problem/1520 1520번: 내리막 길 첫째 줄에는 지도의 세로의 크기 M과 가로의 크기 N이 빈칸을 사이에 두고 주어진다. 이어 다음 M개 줄에 걸쳐 한 줄에 N개씩 위에서부터 차례로 각 지점의 높이가 빈 칸을 사이에 두고 주어진다. www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이 코드 import sys sys.setrecursionlimit(10**9) def sol(i, j): # 목적지 도착 시 1 반환 if i == N - 1 and j == M - 1: return 1 # 방문한 적이 있다면 dp[i][j] 반환 if dp[i][j] != -1: return dp[i]..
백준 15665 N과 M(11) 자바 풀이 난이도 : 실버2 풀이일 : 2403096 https://www.acmicpc.net/problem/15665 15665번: N과 M (11) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이 코드 import java.util.Scanner; import java.util.Arrays; import java.util.Set; import java.util.LinkedHashSet; public class Main { static int N, M; static int[] nums, resu..
백준 11437 LCA 파이썬 풀이 난이도 : 골드3 풀이일 : 2403122 https://www.acmicpc.net/problem/11437 11437번: LCA 첫째 줄에 노드의 개수 N이 주어지고, 다음 N-1개 줄에는 트리 상에서 연결된 두 정점이 주어진다. 그 다음 줄에는 가장 가까운 공통 조상을 알고싶은 쌍의 개수 M이 주어지고, 다음 M개 줄에는 정 www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 1차 시도 오답 -> 0% 시간초과 import sys from collections import deque def find(n, m): if parent[n] == m: return print(m) temp = deque([n]) while temp: i = temp.popleft() for ni in..
백준 1264 모음의 개수 자바스크립트 풀이 난이도 : 브론즈4 풀이일 : 2403111 https://www.acmicpc.net/problem/1264 1264번: 모음의 개수 입력은 여러 개의 테스트 케이스로 이루어져 있으며, 각 줄마다 영어 대소문자, ',', '.', '!', '?', 공백으로 이루어진 문장이 주어진다. 각 줄은 최대 255글자로 이루어져 있다. 입력의 끝에는 한 줄 www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이 코드 let input = require('fs').readFileSync('/dev/stdin').toString().split('\n'); var i = 0 var vowel = ['a', 'e', 'i', 'o', 'u', 'A', 'E', 'I', 'O', 'U'] whil..
백준 4803 트리 파이썬 풀이 난이도 : 골드4 풀이일 : 2403085 https://www.acmicpc.net/problem/4803 4803번: 트리 입력으로 주어진 그래프에 트리가 없다면 "No trees."를, 한 개라면 "There is one tree."를, T개(T > 1)라면 "A forest of T trees."를 테스트 케이스 번호와 함께 출력한다. www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 문제 이해 처음에 도대체 왜 테스트케이스 1의 트리가 세 개 인가 이해가 안갔는데, 써보고 나이 이해했다. 아무 노드와도 연결되어 있지 않은 노드는 그 자체로 트리 한 개가 된다는 것을 이해한 후 풀이를 시작했다. 풀이 코드 import sys from collections import de..
백준 15664 N과 M (10) 자바 풀이 난이도 : 실버2 풀이일 : 2403074 https://www.acmicpc.net/problem/15664 15664번: N과 M (10) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이 코드 import java.util.Scanner; import java.util.Arrays; import java.util.Set; import java.util.LinkedHashSet; public class Main { static int N, M; static int[] nums; stat..
백준 3584 가장 가까운 공통 조상 파이썬 풀이, 반례 난이도 : 골드4 풀이일 : 2403052 https://www.acmicpc.net/problem/3584 3584번: 가장 가까운 공통 조상 루트가 있는 트리(rooted tree)가 주어지고, 그 트리 상의 두 정점이 주어질 때 그들의 가장 가까운 공통 조상(Nearest Common Anscestor)은 다음과 같이 정의됩니다. 두 노드의 가장 가까운 공통 조상은, 두 www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 1차 시도 오답 import sys from collections import deque def sol(n, m): # n의 자식들의 자식들을 찾아나가며 m 찾기 queue = deque([n]) while queue: x = queue.popleft() f..
백준 5639 이진 검색 트리 파이썬 풀이 난이도 : 골드5 풀이일 : 2403041 https://www.acmicpc.net/problem/5639 5639번: 이진 검색 트리 트리를 전위 순회한 결과가 주어진다. 노드에 들어있는 키의 값은 106보다 작은 양의 정수이다. 모든 값은 한 줄에 하나씩 주어지며, 노드의 수는 10,000개 이하이다. 같은 키를 가지는 노드는 없다 www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이 코드 import sys # 재귀호출 깊이 제한 설정 sys.setrecursionlimit(10 ** 9) # 후위 순회 재귀 함수 def sol(root, end): # 더 이상 탐색할 노드가 없을 때 if root > end: return # 현재 노드 값 저장 temp = nums[r..
백준 15663 N과 M (9) 자바 풀이 난이도 : 실버2 풀이일 : 2403037 https://www.acmicpc.net/problem/15663 15663번: N과 M (9) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해 www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이 코드 import java.util.Scanner; import java.util.Arrays; import java.util.Set; import java.util.LinkedHashSet; public class Main { static int N, M; static int[] nums; stati..
백준 15657 N과 M (8) 자바 풀이 난이도 : 실버3 풀이일 : 2403026 https://www.acmicpc.net/problem/15657 15657번: N과 M (8) N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이 코드 import java.util.Scanner; import java.util.Arrays; public class Main { static int N, M; static int[] nums; static int[] result; static StringBuilder sb = new Stri..
백준 15656 N과 M (7) 자바 풀이 난이도 : 실버3 풀이일 : 240229 https://www.acmicpc.net/problem/15656 15656번: N과 M (7) N개의 자연수와 자연수 M이 주어졌을 때, 아래 조건을 만족하는 길이가 M인 수열을 모두 구하는 프로그램을 작성하시오. N개의 자연수는 모두 다른 수이다. N개의 자연수 중에서 M개를 고른 수열 www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이 코드 import java.util.Scanner; import java.util.Arrays; public class Main { static int N, M; static int[] nums; static int[] result; static StringBuilder sb = new Strin..
백준 7662 이중 우선순위 큐 파이썬 풀이 난이도 : 골드4 풀이일 : 2402283 https://www.acmicpc.net/problem/7662 7662번: 이중 우선순위 큐 입력 데이터는 표준입력을 사용한다. 입력은 T개의 테스트 데이터로 구성된다. 입력의 첫 번째 줄에는 입력 데이터의 수를 나타내는 정수 T가 주어진다. 각 테스트 데이터의 첫째 줄에는 Q에 적 www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이코드 import sys, heapq T = int(sys.stdin.readline()) for _ in range(T): k = int(sys.stdin.readline()) mini, maxi = [], [] visited = [False] * 1000001 for i in range(k): A,..
백준 11780 플로이드 2 파이썬 풀이 난이도 : 골드2 풀이일 : 2402117 https://www.acmicpc.net/problem/11780 11780번: 플로이드 2 첫째 줄에 도시의 개수 n이 주어지고 둘째 줄에는 버스의 개수 m이 주어진다. 그리고 셋째 줄부터 m+2줄까지 다음과 같은 버스의 정보가 주어진다. 먼저 처음에는 그 버스의 출발 도시의 번호가 www.acmicpc.net 링크로 이동하기 귀찮은 분들을 위한 문제 캡쳐 풀이 코드 import sys, heapq def minicost(num): visited = [int(1e9)] * (n + 1) visited[num] = 0 queue = [] heapq.heappush(queue, [0, num, [num]]) # 비용, 다음 목적지, 거쳐간 도시 # 각 도착지까지..