쑥로그

[자바] 백준 1912 - 연속합 풀이 본문

개인 프로젝트/72일 알고리즘 다지기 프로젝트

[자바] 백준 1912 - 연속합 풀이

SOOOOOK 2019. 9. 10. 00:32

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

 

1912번: 연속합

첫째 줄에 정수 n(1 ≤ n ≤ 100,000)이 주어지고 둘째 줄에는 n개의 정수로 이루어진 수열이 주어진다. 수는 -1,000보다 크거나 같고, 1,000보다 작거나 같은 정수이다.

www.acmicpc.net

 

연속된 합중에서 가장 큰 값을 구하는 문제이다.

여기서 키포인트는

한 개 이상의 연속된 값 중에서 찾는 것이다.

 

 

문제 속 예제를 생각해본다면, 인덱스

 

0

0+1

0+1+2

0+1+2+3

...

0+1+2+3+...+8+9

 

이다.

 

0+1, 0+1+2 등 공통된 부분이 자꾸 더해지므로 재사용하는 것이 좋다.

 

처음엔 이 값들을 배열에 저장하고 있을까 하다가 결국 합이라서 그렇게까지 할 필요가 없을 것 같았다.

왜냐하면 0+1같은 경우는 1부터 시작되는 연속합에 필요가 없기 때문이다.

 

https://github.com/mychum1/shelf/blob/master/com.ksko.algorithm/src.main.java/baekjoon/P_1912.java

 

mychum1/shelf

shelf for docs stuied. Contribute to mychum1/shelf development by creating an account on GitHub.

github.com