문제풀이/SW Expert Academy 47

[SWEA][D2] 1204. [S/W 문제해결 기본] 1일차 - 최빈수 구하기 (파이썬/Python)

t = int(input()) for tc in range(1,t+1): testcase = int(input()) score = list(map(int,input().split())) #점수는 최대 100점 cnt = [0]*101 #해당 점수가 몇번이나 나오는지 세기 위해 cnt 배열에 횟수 저장 for i in score: cnt[i]+=1 m = max(cnt) #최빈수가 여러개 존재할 때 점수가 더 큰 값을 출력해주기 위함 print(f'#{tc} {max([i for i, v in enumerate(cnt) if v == m])}') #enumerate #1. 반복문을 사용할 때 몇 번째 반복문인지를 확인할 때 사용 #2. 인덱스 번호와 컬렉션의 원소를 튜플형태로 반환

[SWEA][D2] 1284. 수도 요금 경쟁 (파이썬/Python)

t = int(input()) for tc in range(1,t+1): P, Q, R, S, W = map(int,input().split()) # P = a사 1리터당 요금 # Q = b사 R리터 이하 요금 # R = b사 R리터부터 요금 # S = b사 R리터부터 1리터당 요금 # W = 종민이의 한 달간의 사용하는 수도 양 A = P * W if W < R: #한달 사용 수도양이 기준치보다 작은 경우 B = Q else: B = Q+((W-R)*S) print(f"#{tc} {min(A,B)}")

[SWEA][D2] 1940. 가랏! RC카! (파이썬/Python)

#n초 동안 이동한 거리를 계산하는 프로그램 t = int(input()) for tc in range(1, t+1): n = int(input()) total = 0 speed = 0 for nc in range(n): a = list(map(int,input().split())) # 가속일 때 if a[0] == 1: speed += a[1] # 감속일 때 elif a[0] == 2: #현재 속도보다 감속할 속도가 더 큰 경우 속도는 0이 된다. if speed < a[1]: speed = 0 else: speed -= a[1] total += speed print(f"#{tc} {total}")

[SWEA][D2] 1959. 두 개의 숫자열 (파이썬/Python)

t = int(input()) for tc in range(1, t+1) : n,m= map(int, input().split()) a = list(map(int, input().split())) b = list(map(int, input().split())) result = 0 if n == m: for i in range(n): result += a[i]*b[i] else: if n > m: c = n-m a = a[c:] for i in range(len(a)): result += a[i]*b[i] else: c = m-n b = b[c:] for i in range(len(b)): result += a[i]*b[i] print(f'#{tc} {result}') # 생각도 안하고 긴쪽 오른쪽에 맞춰..

[SWEA][D2] 1961. 숫자 배열 회전 (파이썬/Python)

t= int(input()) for tc in range(1, t+1): n = int(input()) lst = [input().split() for _ in range(n)] #90도 lst_90 = [] for i in range(n): tmp = [] for j in range(n): tmp.append(lst[j][i]) # 0,0 -> 0,1 -> 0,2 -> 1,0 -> 1,1 -> 1,2.... tmp.reverse() lst_90.append(tmp) #180도 lst_180 = [] for i in range(n): tmp = [] for j in range(n): tmp.append(lst_90[j][i]) #90도 돌린 것을 이용해서 tmp.reverse() lst_180.appen..

[SWEA][D2] 1974. 스도쿠 검증 (파이썬/Python)

T = int(input()) def sudoku(arr): # 가로 확인 for i in range(9): check = [] for j in range(9): if check: if arr[i][j] in check: return '0' check.append(arr[i][j]) # 세로 확인 for i in range(9): check = [] for j in range(9): if check: if arr[j][i] in check: return '0' check.append(arr[j][i]) # 블록 확인 for i in range(0, 9, 3): # 시작점 for j in range(0, 9, 3): check = [] # 블록 for k in range(3): for t in range(..

[SWEA][D2] 1979. 어디에 단어가 들어갈 수 있을까 (파이썬/Python)

t = int(input()) for tc in range(1,t+1): n, k = map(int,input().split()) #리스트 내포 방식 활용 입력 puzzle = [list(map(int, input().split())) for _ in range(n)] result = 0 for i in range(n): cnt = 0 # 가로 검사 for j in range(n): if puzzle[i][j] == 1: cnt += 1 #벽을 만났을 때 그동안 쌓은 값이 k라면 단어가 들어갈 수 있는 조건 이기에 한 번더 살펴본다. if puzzle[i][j] == 0 or j == n-1: if cnt == k: result += 1 cnt = 0 #cnt를 초기화해주어야 함. for j in ran..