문제풀이/SW Expert Academy 47

[SWEA][D2] 1983. 조교의 성적 매기기 (파이썬/Python)

#1983 grades = ['A+','A0','A-','B+','B0','B-','C+','C0','C-','D0'] t = int(input()) for i in range(1, t+1): n, k = map(int,input().split()) scores = [] for j in range(n): mid, fin, hw = map(int,input().split()) scores.append((0.35*mid)+(0.45*fin)+(0.2*hw)) result = [(score, idx+1) for idx,score in enumerate(scores)] result.sort(reverse = True) tmp = n//10 ans = 0 for c in range(n): if result[c][..

[SWEA][D2] 1984. 중간 평균값 구하기 (파이썬/Python)

#1984 T = int(input()) lst = [] for i in range(1,T+1): lst = list(map(int,input().split())) lst.sort() lst.pop(0) lst.pop(-1) print(f'#{i} {round(sum(lst)/10)}') # 간단하게 정렬한 후 맨 앞 값이랑 맨 뒷값을 뺴주면 된다고 생각했는데 틀렸다. #1984 T = int(input()) lst = [] for i in range(1,T+1): lst = list(map(int,input().split())) lst.sort() lst.pop(0) lst.pop(-1) print(f'#{i} {round(sum(lst)/8)}') #틀린 이유가 맨 앞, 뒤 원소를 빼주고 나누기 8을..

[SWEA][D2] 1986. 지그재그 숫자 (파이썬/Python)

N = int(input()) result = 0 for i in range(1,N+1): if i == 1: print("1", end=" ") result += 1 continue elif i%2 == 0: print(f'- {i}',end=" ") result -= i if i%2 != 0: print(f'+ {i}',end=" ") result += i print('=',result) # 생각 없이 나열한 것을 출력함. 결과 값만 출력해주면 되는 문제 T = int(input()) for j in range(1,T+1): N = int(input()) result = 0 for i in range(1,N+1): if i%2 == 0: result -= i elif i%2 == 1: result +..

[SWEA][D2] 1926. 간단한 369게임 (파이썬/Python)

n = int(input()) for i in range(1, n+1): if i%3 == 0: print("-", end=" ") else: print(i,end=" ") 📄 처음엔 반복문만 가지고 369 게임을 만드는 줄 알았는데 36처럼 3과 6이 두개가 있는 경우엔 --를 출력해야 한다는 것을 안 보고 진행해서 틀림 해결 방안 모색? 리스트로 넣어줘서 369가 있는지를 확인하고 그 수에 맞게 "-"를 출력해주어야 한다. n = int(input()) lst = [str(i) for i in range(1 , n+1)] #0 for i in lst: cnt = 0 if '3' in i: #1 cnt += i.count( '3' ) if '6' in i: #2 cnt += i.count( '6' ) ..

[SWEA][D2] 1859. 백만 장자 프로젝트(파이썬/Python)

T = int(input()) for j in range(T): n = int(input()) lst = list(map(int,input().split())) last_lst=lst[-1] #1 cnt = 0 for i in range(len(lst)-1,-1,-1): #2 if last_lst > lst[i]: #3 cnt += last_lst-lst[i] else: #3 last_lst = lst[i] print(f'#{j+1} {cnt}') #1 lst에 맨 마지막 index를 비교해가며 진행한다. #2 뒤에서부터 하나씩 비교해주어야 하기에 for문을 이렇게 진행 #3 맨 마지막 index가 큰 경우 cnt에 맨마지막 index - 현재 리스트의 수를 해준다 #4 맨 마지막 index보다 더 큰 ..