본문 바로가기
반응형

[SWEA] 풀이/[SWEA] D28

[SWEA] SWEA 1946번: 간단한 압축 풀기 파이썬 풀이 - 알고리즘 코딩 문제 해설 python 안녕하세요. 이번 포스팅은 SWEA의 1946번 문제 풀이입니다. 문제 이름은 "간단한 압축 풀기" 입니다. 풀이 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 T = int(input()) for tc in range(T): N = int(input()) result = [] cout = 1 for i in range(N): s, num = input().split() num = int(num) for j in range(num): result.append(s) print('#%d' %(tc+1)) for i in result: if cout % 10 != 0: print(i, end='') else: print(i) cout +=1 print() cs 핵심: 빈 리스.. 2023. 4. 16.
[SWEA] SWEA 1966번: 숫자를 정렬하자 파이썬 풀이 - 알고리즘 코딩 문제 해설 python 안녕하세요. 이번 포스팅은 SWEA의 1966번 문제 풀이입니다. 문제 이름은 "숫자를 정렬하자" 입니다. 풀이 1 2 3 4 5 6 7 8 9 T = int(input()) for tc in range(T): N = int(input()) l = list(map(int, input().split())) l.sort() print('#%d' %(tc+1), end=' ') for i in l: print(i, end=' ') print() cs 핵심: 파이썬의 sort() 함수를 사용합니다. 1. 테스트 개수 T를 입력 받습니다. 2. for 문을 사용해서 테스트 개수만큼 반복합니다. 3. 숫자 N을 입력 받습니다. 4. 리스트를 선언해서 수들을 입력 받습니다. 5. 파이썬의 내장함수인 s.. 2023. 4. 15.
[SWEA] SWEA 1979번: 어디에 단어가 들어갈 수 있을까 파이썬 풀이 - 알고리즘 코딩 문제 해설 python 안녕하세요. 이번 포스팅은 SWEA의 1979번 문제 풀이입니다. 문제 이름은 "어디에 단어가 들어갈 수 있을까" 입니다. 풀이 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 T = int(input()) for tc in range(T): N, K =map(int, input().split()) l = [list(map(int, input().split())) for i in range(N)] result = 0 for col in range(N): cout = 0 for row in range(N): if l[col][row] == 1: cout += 1 if (l[col][row] == 0) or (row == N-1): if cout == K.. 2023. 4. 15.
[SWEA] SWEA 1984번: 중간 평균값 구하기 파이썬 풀이 - 알고리즘 코딩 문제 해설 python 안녕하세요. 이번 포스팅은 SWEA의 1984번 문제 풀이입니다. 문제 이름은 "중간 평균값 구하기" 입니다. 풀이 1 2 3 4 5 6 7 8 9 10 11 T = int(input()) for i in range(T): l = list(map(int, input().split())) l_max = max(l) l_min = min(l) l.remove(l_max) l.remove(l_min) l_s = 0 for j in l: l_s += j print('#%d %d' %((i+1), round(l_s/len(l)))) cs 핵심: 리스트의 max(), min(), remove() 함수를 사용합니다. 1. 테스트 개수 T를 입력 받습니다. 2. for 문을 사용해서 테스트 개수만큼 반복합니다... 2023. 4. 14.
[SWEA] SWEA 1986번: 지그재그 숫자 파이썬 풀이 - 알고리즘 코딩 문제 해설 python 안녕하세요. 이번 포스팅은 SWEA의 1986번 문제 풀이입니다. 문제 이름은 "지그재그 숫자" 입니다. 풀이 1 2 3 4 5 6 7 8 9 10 T = int(input()) for i in range(T): N = int(input()) s = 0 for j in range(1, N+1): if j % 2 == 1: s += j else: s -= j print('#%d %d' %((i+1), s)) cs 핵심: 2로 나눈 나머지가 1일 경우 홀수, 0일 경우 짝수로 판별하여 계산합니다. 1. 테스트 개수 T를 입력 받습니다. 2. for 문을 사용해서 테스트 개수만큼 반복합니다. 3. 숫자 N을 입력 받습니다. 4. 결과값을 출력할 변수를 선언합니다. 5. for 문을 통해 1부터 .. 2023. 4. 14.
[SWEA] SWEA 1989번: 초심자의 회문 검사 파이썬 풀이 - 알고리즘 코딩 문제 해설 python 안녕하세요. 이번 포스팅은 SWEA의 1989번 문제 풀이입니다. 문제 이름은 "초심자의 회문 검사" 입니다. 풀이 1 2 3 4 5 6 7 8 T = int(input()) for i in range(T): s = input() s_r = s[::-1] if s == s_r: print('#%d 1' %(i+1)) else: print('#%d 2' %(i+1)) cs 핵심: 문자열을 거꾸로 뒤집어서 판변합니다. 1. 테스트 개수 T를 입력 받습니다. 2. for 문을 사용해서 테스트 개수만큼 반복합니다. 3. 회문을 판별할 문자열을 입력 받습니다. 4. 문자열을 슬라이싱 기능을 사용해서 뒤집습니다. 5~6. 문자열을 비교했을 경우 회문이면 테스트 번호와 1을 출력합니다. 7~8. 회문.. 2023. 4. 14.
[SWEA] SWEA 2007번: 패턴 마디의 길이 파이썬 풀이 - 알고리즘 코딩 문제 해설 python 안녕하세요. 이번 포스팅은 SWEA의 2007번 문제 풀이입니다. 문제 이름은 "패턴 마디의 길이" 입니다. 풀이 1 2 3 4 5 6 7 8 9 10 11 T = int(input()) for i in range(T): s = input() p_1 = [] p_2 = [] for j in range(10): p_1 = s[:j] p_2 = s[j:j*2] if (j != 0) and (p_1 == p_2): print('#%d %d' %((i+1), len(p_1))) break cs 핵심: 슬라이싱 기능을 사용해서 처음부터 j 이전의 패턴과 j부터 j*2의 패턴이 같은지 판별합니다. 1. 테스트 개수 T를 입력 받습니다. 2. for 문을 사용해서 테스트 개수만큼 반복합니다. 3. 패턴을 판.. 2023. 4. 13.
[SWEA] SWEA 1926번: 간단한 369게임 파이썬 풀이 - 알고리즘 코딩 문제 해설 python 안녕하세요. 이번 포스팅은 SWEA의 1926번 문제 풀이입니다. 문제 이름은 "간단한 369게임" 입니다. 풀이 1 2 3 4 5 6 7 8 9 10 11 N = int(input()) for i in range(1, N+1): l = str(i) cout = 0 for j in l: if j == '3' or j == '6' or j == '9': cout += 1 if cout > 0: print('-'*cout, end=' ') else: print(i, end=' ') cs 핵심: 문자열로 변환하여 3, 6, 9 가 있으면 카운트를 해줍니다. 36일 때는 문자열로 탐색하면 카운트가 2이므로 -를 2번 출력합니다. 1. 숫자 N을 입력 받습니다. 2. for 문을 통해 1부터 N까지 순서대로 .. 2023. 4. 13.
반응형