본문 바로가기
[백준] 1546번 평균 파이썬 (python) 문제 세준이는 기말고사를 망쳤다. 세준이는 점수를 조작해서 집에 가져가기로 했다. 일단 세준이는 자기 점수 중에 최댓값을 골랐다. 이 값을 M이라고 한다. 그러고 나서 모든 점수를 점수/M*100으로 고쳤다. 예를 들어, 세준이의 최고점이 70이고, 수학점수가 50이었으면 수학점수는 50/70*100이 되어 71.43점이 된다. 세준이의 성적을 위의 방법대로 새로 계산했을 때, 새로운 평균을 구하는 프로그램을 작성하시오. 정답코드 def newscore(lista, b): n = max(lista) cnt = 0 for i in lista: i /= n * 100 cnt += i avg = cnt / b return avg N = int(input()) scorelist = list(map(int, in.. 2024. 3. 11.
[백준] 10811번 바구니 뒤집기 파이썬 (python) 문제 도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 순서대로 적혀져 있다. 바구니는 일렬로 놓여져 있고, 가장 왼쪽 바구니를 1번째 바구니, 그 다음 바구니를 2번째 바구니, ..., 가장 오른쪽 바구니를 N번째 바구니라고 부른다. 도현이는 앞으로 M번 바구니의 순서를 역순으로 만들려고 한다. 도현이는 한 번 순서를 역순으로 바꿀 때, 순서를 역순으로 만들 범위를 정하고, 그 범위에 들어있는 바구니의 순서를 역순으로 만든다. 바구니의 순서를 어떻게 바꿀지 주어졌을 때, M번 바구니의 순서를 역순으로 만든 다음, 바구니에 적혀있는 번호를 가장 왼쪽 바구니부터 출력하는 프로그램을 작성하시오. 정답코드 n,m = map(int, input().split()) basket .. 2024. 3. 11.
[백준] 3052번 나머지 파이썬 (python) 문제 두 자연수 A와 B가 있을 때, A% B는 A를 B로 나눈 나머지이다. 예를 들어, 7, 14, 27, 38을 3으로 나눈 나머지는 1, 2, 0, 2이다. 수 10개를 입력받은 뒤, 이를 42로 나눈 나머지를 구한다. 그 다음 서로 다른 값이 몇 개 있는지 출력하는 프로그램을 작성하시오. 정답코드 arr = [] for i in range(10): a = int(input()) if a%42 not in arr: arr.append(a % 42) print(len(arr)) 풀이 리스트를 선언한다. 10번을 돌리면서 입력 a를 받는데, 만약 입력받은 a값을 42로 나눈 나머지가 arr안에 없을 시 a을 42로 나눈 나머지들을 arr안에 저장한다. 그리고 arr안에 저장된 요소들의 개수를 센다. 사.. 2024. 3. 11.
[백준] 10813번 공 바꾸기 파이썬 (python) 문제 도현이는 바구니를 총 N개 가지고 있고, 각각의 바구니에는 1번부터 N번까지 번호가 매겨져 있다. 바구니에는 공이 1개씩 들어있고, 처음에는 바구니에 적혀있는 번호와 같은 번호가 적힌 공이 들어있다. 도현이는 앞으로 M번 공을 바꾸려고 한다. 도현이는 공을 바꿀 바구니 2개를 선택하고, 두 바구니에 들어있는 공을 서로 교환한다. 공을 어떻게 바꿀지가 주어졌을 때, M번 공을 바꾼 이후에 각 바구니에 어떤 공이 들어있는지 구하는 프로그램을 작성하시오. 정답코드 N, M = map(int, input().split()) basket = [0] * N for i in range(N): basket[i] = i+1 for i in range(M): a, b = map(int, input().split()).. 2024. 3. 10.