목록PS/SWEA (13)
DevYoon
link 🔗 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV15QRX6APsCFAYD SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1️⃣ 출발지 S(0, 0)에서 도착지 G(N-1, N-1)까지 가장 빠른 시간 안에 복구 완료하기 2️⃣ 도로가 파여진 깊이에 비례하여 복구 시간 소요 ex) 1 ➡️ 1 소요 3️⃣ 0 ➡️ 복구 불필요 (그냥 더해주기) from collections import deque def bfs(): q = deque() q.append((0, 0)) while q: ny, nx = q.p..
link 🔗 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5V4A46AdIDFAWu SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1️⃣ 각각 DFS 돌려주기 def dfs(n, cnt, profit, lst): global sol if n == M: if cnt
link 🔗 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWXRFInKex8DFAUo SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1️⃣ 두 개 이상의 원자가 충돌 ➡️ 에너지 방출 & 소멸 2️⃣ 상 하 좌 우 중 1 방향으로 1초에 1 움직임 3️⃣ 동시에 이동 t = int(input()) directy = [1, -1, 0, 0] directx = [0, 0, -1, 1] for tc in range(1, t+1): N = int(input()) arr = [list(map(int, input().split..
link 🔗 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5V61LqAf8DFAWu SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com from collections import deque def bfs(y, x): global Max, M check = [[0]*N for _ in range(N)] q = deque() q.append((y, x)) # y, x check[y][x] = 1 K = 0 # 제공 범위 home = 0 # 방범 서비스 받는 집의 개수 if arr[y][x] == 1: # 시작 지점에 집이 ..
link 🔗 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV597vbqAH0DFAVl SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com t = int(input()) for tc in range(1, t+1): N, M, K = map(int, input().split()) # 셀의 개수, 격리 시간, 군집의 개수 misaeng = [list(map(int, input().split())) for _ in range(K)] # 세로, 가로, 미생물 수, 이동방향 direct = [(-1, 0), (1, 0), (0, -..
link 🔗 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWIeUtVakTMDFAVH SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com def cal(lst): temp = 0 for i in range(len(lst)-1): for j in range(i+1, len(lst)): temp += arr[lst[i]][lst[j]] temp += arr[lst[j]][lst[i]] return temp def dfs(level, num): global Min if level == (N//2)-1: A = [] B = []..
link 🔗 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5VwAr6APYDFAWu SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com def dfs(num, cy, cx, visit): global Max, sy, sx if num > 3: return if num == 3 and cy == sy and cx == sx: if Max < len(visit): Max = len(visit) return for idx in range(num, num+2): # 현재 방향, 현재방향+1 dy, dx = cy+directy[..
link 🔗 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5PoOKKAPIDFAUq SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1️⃣ 등산로는 가장 높은 봉우리에서 ➡️ Max 값 구해주고, 이중 for문으로 Max값과 같다면 dfs 돌려주기 2️⃣ 가로 or 세로로 이동, 높은 → 낮은 ➡️ 상 하 좌 우, Branch 4 3️⃣ 딱 한 곳을 정해 최대 공사 가능 깊이 K만큼 ➡️ 처음에 K보다 작으면 등산로를 조성할 수 없다고 이해했는데, 문제 풀면서 잘못 이해했다는 것을 깨달았다. 4️⃣ 만들 수 있는 가..
link 🔗 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWXRQm6qfL0DFAUo SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1️⃣ DFS로 칠 벽돌 고르기 2️⃣ BFS로 벽돌에 쓰여 있는 만큼 상하좌우 제거 3️⃣ gravity() 함수로 벽돌 내려주기, for문 사용 from collections import deque import copy # 중력에 따라 벽돌 내려주기 def gravity(): for j in range(W): for i in range(H-1, 0, -1): # H-1 ~ 1까지 거..
link 🔗 https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWIeRZV6kBUDFAVH SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1️⃣ DFS로 나올 수 있는 연산자 조합 구해주기 2️⃣ calculate() 함수로 숫자+연산자, 왼쪽 → 오른쪽 순서로 계산 3️⃣ Max, Min과 비교하여 갱신 t = int(input()) def calculate(operator): global Max, Min temp = num[0] for i in range(1, N): if operator[i-1] == '+': tem..