본문 바로가기

스터디 1일 1커밋

240422 [BOJ/백준] 17390. 이건 꼭 풀어야 해!

https://www.acmicpc.net/problem/17390

 

17390번: 이건 꼭 풀어야 해!

[2, 5, 1, 4, 3]을 비내림차순으로 정렬하면 [1, 2, 3, 4, 5]이다.

www.acmicpc.net


나의 코드

import sys

N, Q = map(int, sys.stdin.readline().split())
arr = list(map(int, sys.stdin.readline().split()))
arr.sort()
dp = [0]*(N+1)
for i in range(1, N+1):
    dp[i] = dp[i-1] + arr[i-1]

for _ in range(Q):
    s, e = map(int, sys.stdin.readline().split())
    print(dp[e]-dp[s-1])

 

결과


누적합 문제는 풀어봐야지 생각만 했다가 이번에 갑자기 누적합에 대해 풀어보고 싶어졌다. 결국 DP문제였넼ㅋㅋㅋㅋㅋㅋ 처음 시간 초과는 입력값이 많긴했지만 DP로 시간복잡도가 O(N)이라 시간초과가 안날 줄 알고 입력에 readline을 안써서...ㅜㅜ 입력에 readline넣고 바로 성공! DP좋아~~~~