코테
-
Problem: https://www.acmicpc.net/problem/16439 16439번: 치킨치킨치킨 첫 번째 줄에 고리 회원의 수 N (1 ≤ N ≤ 30) 과 치킨 종류의 수 M (3 ≤ M ≤ 30) 이 주어집니다. 두 번째 줄부터 N개의 줄에 각 회원의 치킨 선호도가 주어집니다. i+1번째 줄에는 i번째 회원의 선 www.acmicpc.net combination을 써서 쉽게 풀었다. 조합을 생각해야 하는 문제. 처음에는 단순히 세로줄을 더해서 큰 거를 하면 되는 거 아닌가? 했는데 모든 경우의 수를 따져봐야 하는 문제. import sys from itertools import combinations input = sys.stdin.readline n, m = map(int, input..
[BaekJoon] 치킨치킨치킨 - 실버4 (Python3)Problem: https://www.acmicpc.net/problem/16439 16439번: 치킨치킨치킨 첫 번째 줄에 고리 회원의 수 N (1 ≤ N ≤ 30) 과 치킨 종류의 수 M (3 ≤ M ≤ 30) 이 주어집니다. 두 번째 줄부터 N개의 줄에 각 회원의 치킨 선호도가 주어집니다. i+1번째 줄에는 i번째 회원의 선 www.acmicpc.net combination을 써서 쉽게 풀었다. 조합을 생각해야 하는 문제. 처음에는 단순히 세로줄을 더해서 큰 거를 하면 되는 거 아닌가? 했는데 모든 경우의 수를 따져봐야 하는 문제. import sys from itertools import combinations input = sys.stdin.readline n, m = map(int, input..
2024.02.16 -
https://www.acmicpc.net/problem/13305 13305번: 주유소 표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 도시의 개수를 나타내는 정수 N(2 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 인접한 두 도시를 연결하는 도로의 길이가 제일 왼쪽 도로부터 N-1 www.acmicpc.net 모든 주유소의 가격이 똑같다면? 처음에는 sort로 접근했는데 그럴 필요없이 마지막 if i == n-2일 때, min이랑 거리를 곱해주면 된다. 아직은 계속 생각해내는게 쉽진 않지만, 조금씩 성장하는 중이다! n = int(input()) len = list(map(int, input().split())) costs = list(map(int, input().split())) to..
[BaekJoon] 주유소 - 실버3 (Python3)https://www.acmicpc.net/problem/13305 13305번: 주유소 표준 입력으로 다음 정보가 주어진다. 첫 번째 줄에는 도시의 개수를 나타내는 정수 N(2 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 인접한 두 도시를 연결하는 도로의 길이가 제일 왼쪽 도로부터 N-1 www.acmicpc.net 모든 주유소의 가격이 똑같다면? 처음에는 sort로 접근했는데 그럴 필요없이 마지막 if i == n-2일 때, min이랑 거리를 곱해주면 된다. 아직은 계속 생각해내는게 쉽진 않지만, 조금씩 성장하는 중이다! n = int(input()) len = list(map(int, input().split())) costs = list(map(int, input().split())) to..
2024.02.15 -
https://www.acmicpc.net/problem/5212 5212번: 지구 온난화 첫째 줄에 지도의 크기 R과 C (1 ≤ R, C ≤ 10)가 주어진다. 다음 R개 줄에는 현재 지도가 주어진다. www.acmicpc.net 코딩테스트 스터디를 시작하고 백준 문제를 풀어보고 있는 중 다른 건 어찌어찌 해결했는데, 마지막에 출력할 때 y축이 너~무 어려웠다. 방향벡터도 손에 좀 익긴 해야 할 듯... row, col = map(int, input().split()) arr = [list(input()) for _ in range(row)] # input new = [] # new array # 방항 벡터 dx = [-1, 1, 0, 0] dy = [0, 0, -1, 1] for i in range..
[BaekJoon] 지구온난화 - 실버2 (Python3)https://www.acmicpc.net/problem/5212 5212번: 지구 온난화 첫째 줄에 지도의 크기 R과 C (1 ≤ R, C ≤ 10)가 주어진다. 다음 R개 줄에는 현재 지도가 주어진다. www.acmicpc.net 코딩테스트 스터디를 시작하고 백준 문제를 풀어보고 있는 중 다른 건 어찌어찌 해결했는데, 마지막에 출력할 때 y축이 너~무 어려웠다. 방향벡터도 손에 좀 익긴 해야 할 듯... row, col = map(int, input().split()) arr = [list(input()) for _ in range(row)] # input new = [] # new array # 방항 벡터 dx = [-1, 1, 0, 0] dy = [0, 0, -1, 1] for i in range..
2024.02.15 -
https://youtu.be/KGyK-pNvWos?si=UmTopIc_Gx-Xh8nV 본 내용은 위의 유투브를 참고해서 작성했음을 밝힙니다! 두 배열의 원소 교체 문제 해결 아이디어 n, k = map(int, input().split()) a = list(map(int, input().split())) b = list(map(int, input().split())) a.sort() # 배열 A는 오름차순 정렬 수행 b.sort(reverse=True) # 배열 B는 내림차순 정렬 수행 # 첫 번재 인덱스부터 확인하며, 두 배열의 원소를 최대 k번 비교 for i in range(k): if a[i] < b[i]: a[i], b[i] = b[i], a[i] else: break print(sum(a))..
[정렬 알고리즘] 문제: 두 배열의 원소 교체https://youtu.be/KGyK-pNvWos?si=UmTopIc_Gx-Xh8nV 본 내용은 위의 유투브를 참고해서 작성했음을 밝힙니다! 두 배열의 원소 교체 문제 해결 아이디어 n, k = map(int, input().split()) a = list(map(int, input().split())) b = list(map(int, input().split())) a.sort() # 배열 A는 오름차순 정렬 수행 b.sort(reverse=True) # 배열 B는 내림차순 정렬 수행 # 첫 번재 인덱스부터 확인하며, 두 배열의 원소를 최대 k번 비교 for i in range(k): if a[i] < b[i]: a[i], b[i] = b[i], a[i] else: break print(sum(a))..
2024.02.13 -
https://youtu.be/7C9RgOcvkvo?si=HMjH9vrqOZXbSek7 본 내용은 위 유투브를 참고해서 작성했음을 밝힙니다! BFS (Breadth-First Search) 너비 우선 탐색 그래프에서 가장 가까운 노드부터 우선적으로 탐색하는 알고리즘 큐 자료구조를 이용 탐색 시작 노드를 큐에 삽입하고 방문 처리를 함 큐에서 노드를 꺼낸 뒤에 해당 노드의 인접 노드 중에서 방문하지 않은 노드를 모두 큐에 삽입하고 방문 처리함. 더 이상 2번의 과정을 수행할 수 없을 때까지 반복함. from collections import deque # BFS 메서드 정의 def bfs(graph, start, visited): # 큐(Queue) 구현을 위해 deque 라이브러리 사용 queue = de..
[DFS&BFS] BFS (Breadth-First Search)https://youtu.be/7C9RgOcvkvo?si=HMjH9vrqOZXbSek7 본 내용은 위 유투브를 참고해서 작성했음을 밝힙니다! BFS (Breadth-First Search) 너비 우선 탐색 그래프에서 가장 가까운 노드부터 우선적으로 탐색하는 알고리즘 큐 자료구조를 이용 탐색 시작 노드를 큐에 삽입하고 방문 처리를 함 큐에서 노드를 꺼낸 뒤에 해당 노드의 인접 노드 중에서 방문하지 않은 노드를 모두 큐에 삽입하고 방문 처리함. 더 이상 2번의 과정을 수행할 수 없을 때까지 반복함. from collections import deque # BFS 메서드 정의 def bfs(graph, start, visited): # 큐(Queue) 구현을 위해 deque 라이브러리 사용 queue = de..
2024.02.13 -
https://youtu.be/7C9RgOcvkvo?si=HMjH9vrqOZXbSek7 본 내용은 위 유투브를 참고해서 작성했음을 밝힙니다! DFS (Depth-First Search) DFS는 깊이 우선 탐색이라고도 부르며 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘 DFS는 스택 자료구조(혹은 재귀 함수)를 이용하며, 구체적인 동작 과정은 다음과 같음 탐색 시작 노드를 스택에 삽입하고 방문 처리를 함 스택의 최상단 노드에 방문하지 않은 인접한 노드가 하나라도 있으면 그 노드를 스택에 넣고 방문 처리함. 방문하지 않은 인접 노드가 없으면 스택에서 최상단 노드를 꺼냄. 더 이상 2번의 과정을 수행할 수 없을 때까지 반복함. # DFS 메서드 정의 def dfs(graph, v, visited): ..
[DFS&BFS] DFS (Depth-First Search)https://youtu.be/7C9RgOcvkvo?si=HMjH9vrqOZXbSek7 본 내용은 위 유투브를 참고해서 작성했음을 밝힙니다! DFS (Depth-First Search) DFS는 깊이 우선 탐색이라고도 부르며 그래프에서 깊은 부분을 우선적으로 탐색하는 알고리즘 DFS는 스택 자료구조(혹은 재귀 함수)를 이용하며, 구체적인 동작 과정은 다음과 같음 탐색 시작 노드를 스택에 삽입하고 방문 처리를 함 스택의 최상단 노드에 방문하지 않은 인접한 노드가 하나라도 있으면 그 노드를 스택에 넣고 방문 처리함. 방문하지 않은 인접 노드가 없으면 스택에서 최상단 노드를 꺼냄. 더 이상 2번의 과정을 수행할 수 없을 때까지 반복함. # DFS 메서드 정의 def dfs(graph, v, visited): ..
2024.02.13