SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1. 문제 내용 2. 접근 방식 현재까지 본 숫자는 중복이 제거된 0 ~ 9 사이의 값이다. 따라서 집합(set)를 사용하여 지금까지 숫자를 담아야겠다고 판단했다. 집합은 중복을 허용하지 않으므로 만약 집합의 길이가 10이 된다면 이는 곧 0 ~ 9까지의 모든 숫자가 담겼다는 의미이다. 3. 정답 코드 update( ) : 집합에 여러 값을 추가한다 T = int(input()) for test_case in range(1, T + 1): n = int(input()) numbers = set() nx, count = n, 1 while True : temp = ..
SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1. 문제 내용 2. 접근 방식 각 총점을 구한 후, k번째 학생의 총점을 저장한다. 그 총점을 내림차순 정렬한 후, k번째 학생의 점수 순위를 저장한다. 각 평점에 속할 수 있는 순위의 경계값을 구한 후, k번째 학생이 몇 번째 경계값에 속하는지 구한다. k번째 학생이 속한 경계값이 곧 k번째 학생의 평점이다. 뭔가 더 깔끔하고 명확한 코드를 작성할 수 있을 듯한데, 아쉽다. 나중에 다시 보면 번뜩 또 다른 아이디어가 떠오르길 기대한다. 3. 정답 코드 def make_list_with_total(n) : data = [] for i in range(1, n +..
SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1. 문제 내용 2. 접근 방식 일단 모든 문자를 한 줄로 생성한 후, 10개씩 쪼개서 출력하는 것이 가장 간단하겠다고 생각했다. 10개씩 출력한 후, 남은 문자열은 단순히 출력하면 된다. ex) AAABBBBBCCCC → AAABBBBBCC CC 3. 정답 코드 T = int(input()) for test_case in range(1, T + 1): n = int(input()) string = '' for i in range(n) : key, value = input().split() string += key * int(value) print(f'#{test..
SW Expert Academy SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요! swexpertacademy.com 1. 문제 내용 2. 접근 방식 입력받은 10개의 데이터를 리스트에 담고, 각 최대값/최소값을 제거한 후 평균을 구한다. 3. 정답 코드 remove( 값 ) : 반환값 X round( ) : 반올림 함수 T = int(input()) for test_case in range(1, T + 1): data = list(map(int, input().split())) smallest, biggest = min(data), max(data) data.remove(smallest) data.remove(biggest) average = round(sum(data) / l..