#664함수로 배열의 부분합 리턴하기

기초
⏱ 시간 제한: 5|💾 메모리 제한: 128 MB

문제 설명

배열의 참조 범위([a, b], a번부터 ~ b번까지 범위, 폐구간 [a, b])를 입력 받아 그 범위의 부분합을 출력하세요.

단, 함수형 문제이므로 함수 subsetsum()만 작성하여 제출하시오.

예를 들어 1 ~ n번으로 구성된 배열 1 5 3 4 2 에서 폐구간 [2, 4]의 부분합을 계산하면 5+3+4=12 가 된다.

미리 작성된 코드

아래 코드에서 주석 위치에 함수를 작성하여 제출하세요.

C 언어

c
#include 

int n, a, b, d[1010];

/* 여기에 함수를 작성하세요 */

int main()
{scanf("%d", &n);

for(int i=1; i<=n; i++)
scanf("%d", &d[i]);

scanf("%d%d", &a, &b);

printf("%lld\n", subsetsum(a, b));}

Python

python
# 여기에 함수를 작성하세요

n = int(input())
d = [0] + list(map(int, input().split()))
a, b = map(int, input().split())
print(subsetsum(d, a, b))

입력 설명

첫 줄에 데이터의 개수(n)가 입력된다. 두 번째 줄에 n개의 데이터(ki)가 공백을 두고 입력된다. 세 번째 줄에 부분합을 수행할 시작 번호와 마지막 번호가 공백을 두고 입력된다. (1 <= a <= b <= n <= 1000) (-2147483648 <= ki <= 2147483647)

출력 설명

입력된 데이터 배열의 [a, b] 구간의 부분합을 출력합니다.

예제

입력 1

5
1 5 3 4 2
2 4

출력 1

12

입력 2

3
10 20 30
1 3

출력 2

60
함수형 문제
함수 본체만 작성하세요
언어:

테스트 실행 결과가 여기에 표시됩니다

제출하려면 로그인이 필요해요