[백준/Python] 11659번: 구간 합 구하기 4
·
Algorithm/Python
1. 문제 분석핵심: N개의 수가 주어졌을 때, i번째 수부터 j번째 수까지의 합을 구하는 질문(M)을 해결하기.입력: N (데이터 개수), M (질문 개수), 그리고 N개의 숫자들.조건: N, M 2. 접근 방식for문을 돌려 합을 구하는 방식시간 초과 문제합 배열로 구하기3. 내 풀이 (Code)N=int(input())M=int(input())number=list(map(int,input().split()))for _ in range(M): sum=0 i=int(input()) j=int(input()) for k in range(i-1,j): sum=sum+number[k]4. 코드 리뷰 및 학습 포인트✅ 정답 풀이 - 합 배열 (Prefix Sum)매번 ..
[백준/Python] 1546번: 평균
·
Algorithm/Python
1. 문제 분석핵심: 주어진 점수 중 최댓값(M)을 찾고, 모든 점수를 점수/M*100으로 변환한 뒤 새로운 평균 구하기.제한 사항: 과목 수 N은 1000 이하, 점수는 100 이하의 정수2. 접근 방식점수를 1차원 리스트에 저장합니다.최대값을 구합니다.한 과목씩 새 방법으로 점수를 구하고 평균을 구합니다.3. 내 풀이 (Code)N=int(input())scores=list(map(int,input().split()))M=max(scores)new_scores=[]for i in range(len(scores)): new_scores.append(scores[i]/M*100) print(sum(new_scores)/N)4. 코드 리뷰 및 학습 포인트✅ 더 효율적인 풀이반복문 대신 파이썬의 ..
[백준/Python] 11720번: 숫자의 합
·
Algorithm/Python
1. 문제 설명문제: N개의 숫자가 공백 없이 쓰여 있다. 이 숫자를 모두 합해서 출력하는 프로그램을 작성하시오.입력: 첫째 줄에 숫자의 개수 N (1 ≤ N ≤ 100), 둘째 줄에 숫자 N개가 공백 없이 주어진다.출력: 입력으로 주어진 숫자 N개의 합을 출력한다.2. 접근 방식이 문제는 문자열의 각 자릿수를 분리하여 정수로 변환한 뒤 더하는 것이 핵심입니다.파이썬의 input()을 통해 두 번째 줄의 숫자들을 문자열 형태로 받습니다.문자열을 list()로 감싸면 각 자릿수가 하나씩 분리된 리스트가 됩니다.반복문을 통해 리스트의 각 요소를 다시 정수(int)로 형변환하며 누적 합을 구합니다.3. 내 풀이 (Code)n=input()numbers=list(input())sum=0for i in numbe..