목록SWEA (5)
줴림이 공부하줴림
이번 문제는 병합 정렬 문제인데, 정렬된 배열의 중간 값과 왼쪽 마지막 원소가 오른쪽 마지막 원소보다 큰 경우의 수도 출력해야 하는 문제이다.# 오류가 난 코드T = int(input())for test_case in range(1, T+1): N = int(input()) arr = list(map(int, input().split())) count = 0 def merge_sort(m): global count if len(m) right[-1]: count += 1 return merge(left, right) def merge(left, right): result = [] ..
이번 문제는 N개의 컨테이너를 M개의 트럭으로 옮길 때, 화물 총 중량이 최대가 되도록 옮긴다면 그 무게가 얼마인지 구하는 문제이다.T = int(input())for test_case in range(1, T+1): N, M = map(int, input().split()) containers = list(map(int, input().split())) trucks = list(map(int, input().split())) containers = sorted(containers) trucks = sorted(trucks) answer = 0 while True: if len(containers) == 0 or len(trucks) == 0: ..
이번 문제는 사무실에서 출발해 각 구역을 한 번씩만 방문하고 사무실로 돌아올 때의 최소 배터리 사용량을 구하는 문제이다. 각 행에서 한 칸만 방문해야 하는 그런 문제인 것 같다.물론 얘도 이것저것 해보다가 잘 안돼서 인터넷의 도움을 받았다... 이 정도면 코딩에 재능이 없는게 아닐까 싶지만, 아까부터 하품을 연달아 하는 걸 보니 그냥 졸려서 잘 안되는 것으로 생각해야겠다. (+ 팔찌 잃어버려서 멘탈 깨진 것도) 내일부턴 정신 차리고 한 문제라도 제대로 풀어야지.T = int(input())for test_case in range(1, T+1): N = int(input()) arr = [list(map(int, input().split())) for _ in range(N)] visite..
이번 문제는 맨 왼쪽 위에서 맨 오른쪽 아래까지 이동할 때의 숫자 합계의 최솟값을 구하는 문제이다.T = int(input())for test_case in range(1, T+1): N = int(input()) arr = [list(map(int, input().split())) for _ in range(N)] min_sum = float('inf') def dfs(x, y, total): global min_sum if total >= min_sum: # 이미 최소합보다 크면 가지치기 return # 도착지점에 도달했을 때 if x == N-1 and y == N-1: m..
https://swexpertacademy.com/main/learn/course/lectureProblemViewer.do이번 문제는 N자리 16진수가 주어지면 각 자리 수를 4자리 2진수로 표시하는 프로그램을 만드는 것이다.2진수의 앞자리 0도 반드시 출력해야 함ex) 47FE => 01000111111110T = int(input())hex_list = {'A': 10, 'B': 11, 'C': 12, 'D': 13, 'E': 14, 'F': 15}for test_case in range(1, T+1): N, num = input().split() answer = '' for i in num[::-1]: if i in hex_list: i = ..