2024/05 47

[Python][SWEA] 3282. 0/1 Knapsack D3

SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com🗒️파이썬 코드 풀이def dp(N,K) : dp_lst = [[0] * (K+1 ) for _ in range(N+1)] # dp 2차원 행령 for n in range(N+1): # 최대 개수와 최대 부피로 이뤄진 2차원 행렬 for k in range(K+1): if n==0 or k==0 : dp_lst[n][k] == 0 elif V_lst[n-1]  1. N의 범위가 100이하로 DP를 생각해준다.  2. 2차원 리스트에서 행은 N(물건 개수) 열은 K(물건 부피..

[Python][SWEA] 6190. 정곤이의 단조 증가하는 수 D3

SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com🗒️ 파이썬 코드 풀이def danjo(m_ls) : for i in range(1,len(m_ls)) : if m_ls[i]  1. 2중 반복문을 이용해서 리스트에 값들을 2개씩 곱하고 mul_lst에 붙여넣는다. 2. mul_lst의 값들을 하나씩 문자열로 바꿔 함수에 파라미터 값으로 넣는다. 그리고 단조 증가를 확인한다.(return을 이용하여 for문을 쉽게 빠져나오기 위해 함수를 만들었다.) 3. ans에 최대값을 갱신하여 답을 구한다.  📌 내가 작성한 코드from collections import dequeT = int(input..

[Python][SWEA] 1945. 간단한 소인수분해 D2

SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com🗒️ 파이썬 코드 풀이T = int(input())for test_case in range(1, T + 1): N = int(input()) lst = [2,3,5,7,11] cnts = [0] * 5 for i in range(5) : while N % lst[i] == 0 : cnts[i] += 1 N = N / lst[i] print(f"#{test_case} {' '.join(list(map(str,cnts)))}") 1. 소인수 리스트와 카운트를 해줄 리스트를 만들어준다. 2. ..

[Python][SWEA] 6808. 규영이와 인영이의 카드게임

SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com🗒️ 파이썬 코드 풀이def permutation() : # 인영이 카드의 모든 조합을 인영이 카드와 비교 global cnt if len(card_lst) == 9 : sum = 0 for i in range(9): if lst_gu[i] > card_lst[i]: sum += (lst_gu[i] + card_lst[i]) if sum >= 86 : cnt += 1 break ..

[Python][SWEA] 1225. [S/W 문제해결 기본] 7일차 - 암호생성기 D3

SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com🗒️ 파이썬 코드 풀이from collections import dequefor tc in range(1,11) : N = int(input()) lst = list(map(int,input().split())) q = deque() # queue 자료 구조를 이용 for ls in lst : q.append(ls) cnt = 0 # 1~5씩 숫자를 높여가면서 queue에 뺄셈 while q[-1] : # Queue의 맨 마지막이 0이 되는 경우 종료 cnt += 1 ..

[Python][SWEA] 1240. [S/W 문제해결 응용] 1일차 - 단순 2진 암호코드 D3

SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com🗒️ 파이썬 코드 풀이#--------------------------------------------------------# 아이디어 정리# 0. 2진 코드 딕셔너리 형태로 생성# 1. 행의 합이 0인것 제외하고 0이 아닌 첫 행 추출 (for-if)# 2. 뒤에서 부터 1이 나오는 인덱스 위치부터 -56개까지 추출 (for)# 3. 56비트를 7비트씩 8개로 쪼개고, 딕셔너리에서 value값 추출 (for)# 4. 올바른 코드인지 체크 (for)#--------------------------------------------------------# 시간 복잡도 #..

[Python][SWEA] 1493. 수의 새로운 연산 D3

SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com🗒️ 파이썬 코드 풀이i = j = 1dic = {(i,j) : 1} # 인덱스 위치 -> 좌표값u_dic = {1 : (i,j)} # 좌표값 -> 인덱스 위치for n in range(2,50000) : # 인덱스 위치,좌표값 딕셔너리 형태로 생성 i -= 1 j += 1 if i == 0 : i = j j = 1 dic[(i,j)] = n u_dic[n] = (i,j)T = int(input())for tc in range(1,T+1) : p,q = list(map(int,input(..

[Python][SWEA] 1946. 간단한 압축 풀기 D2

SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com🗒️파이썬 코드 풀이T = int(input())for tc in range(1,T+1) : N = int(input()) lst = [(input().split()) for _ in range(N)] # 입력 받기 for i in range(N) : # 숫자형으로 변환 lst[i][1] = int(lst[i][1]) sentence = "" for char,num in lst : # 문자 * 숫자로 문자열 만들고 합치기 sentence += char * num print(f"#{tc}") # 너비..

[Python][SWEA] 4615. 재미있는 오셀로 게임 D3

SW Expert AcademySW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!swexpertacademy.com🗒️파이썬 코드 풀이T = int(input())for tc in range(1,T+1) : N,M = map(int,input().split()) lst = [list(map(int,input().split())) for _ in range(M)] # 오셀로 기본 세팅 othello = [[0] * (N+1) for _ in range(N+1)] center = N//2 othello[center][center] = othello[center+1][center+1] = 2 othello[center+1][center] = oth..