Notice
Recent Posts
Recent Comments
Link
삐까냥의 파도타기
1912번) 연속합 본문
문제 출처 : https://www.acmicpc.net/problem/1912
예제가 함정을 말해주지 않아서 까다로운 문제입니다.
함정을 파악할 수 있도록 예제를 수정하겠습니다.
"10 -4 5 7 9 7 -35 12 21 -1"를 입력하면 결과는 34가 나옵니다.
10 + (-4) + 5 + 7 + 9 + 7 의 결과값 34가
12 + 21 의 결과값 33 보다 크기 때문입니다.
단순하게 숫자가 0보다 작을 경우에는 덧셈을 종료하는 것이 아니라,
"sum(n-1) + n항"과 "n항"의 값을 비교하면 됩니다.
배고파서 그런지 설명이 안되네요. 코드 보시죠.
import java.util.Scanner; public class Q1912 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int input = scanner.nextInt(); int max = scanner.nextInt(); int sum = max;
for ( int i = 1; i < input; i++ ) { int temp = scanner.nextInt(); sum = sum + temp > temp ? sum + temp : temp; max = max > sum ? max : sum; } System.out.println(max); scanner.close(); } } |
'코딩 > 백준 알고리즘' 카테고리의 다른 글
10844번) 쉬운 계단 수 (0) | 2017.10.11 |
---|---|
1010번) 다리 놓기 (0) | 2017.10.11 |
11726번) 2×n 타일링 (0) | 2017.10.09 |
1932번) 숫자삼각형 (0) | 2017.10.03 |
9095번) 1, 2, 3 더하기 (0) | 2017.10.03 |