๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿ”ฅ PS(Problem Solving) ๐Ÿ”ฅ/BOJ

[BOJ] #1912 ์—ฐ์†ํ•ฉ

by dar0m! 2020. 5. 11.
์‹œ๊ฐ„ ์ œํ•œ ๋ฉ”๋ชจ๋ฆฌ ์ œํ•œ ์ •๋‹ต ๋น„์œจ
 1 ์ดˆ  128 MB 27.902%
 

1912๋ฒˆ: ์—ฐ์†ํ•ฉ

์ฒซ์งธ ์ค„์— ์ •์ˆ˜ n(1 ≤ n ≤ 100,000)์ด ์ฃผ์–ด์ง€๊ณ  ๋‘˜์งธ ์ค„์—๋Š” n๊ฐœ์˜ ์ •์ˆ˜๋กœ ์ด๋ฃจ์–ด์ง„ ์ˆ˜์—ด์ด ์ฃผ์–ด์ง„๋‹ค. ์ˆ˜๋Š” -1,000๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ •์ˆ˜์ด๋‹ค.

www.acmicpc.net

 

๋ฌธ์ œ

n๊ฐœ์˜ ์ •์ˆ˜๋กœ ์ด๋ฃจ์–ด์ง„ ์ž„์˜์˜ ์ˆ˜์—ด์ด ์ฃผ์–ด์ง„๋‹ค. ์šฐ๋ฆฌ๋Š” ์ด ์ค‘ ์—ฐ์†๋œ ๋ช‡ ๊ฐœ์˜ ์ˆ˜๋ฅผ ์„ ํƒํ•ด์„œ ๊ตฌํ•  ์ˆ˜ ์žˆ๋Š” ํ•ฉ ์ค‘ ๊ฐ€์žฅ ํฐ ํ•ฉ์„ ๊ตฌํ•˜๋ ค๊ณ  ํ•œ๋‹ค. ๋‹จ, ์ˆ˜๋Š” ํ•œ ๊ฐœ ์ด์ƒ ์„ ํƒํ•ด์•ผ ํ•œ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด์„œ 10, -4, 3, 1, 5, 6, -35, 12, 21, -1 ์ด๋ผ๋Š” ์ˆ˜์—ด์ด ์ฃผ์–ด์กŒ๋‹ค๊ณ  ํ•˜์ž. ์—ฌ๊ธฐ์„œ ์ •๋‹ต์€ 12+21์ธ 33์ด ์ •๋‹ต์ด ๋œ๋‹ค.

์ž…์ถœ๋ ฅ

์ฒซ์งธ ์ค„์— ์ •์ˆ˜ n(1 ≤ n ≤ 100,000)์ด ์ฃผ์–ด์ง€๊ณ  ๋‘˜์งธ ์ค„์—๋Š” n๊ฐœ์˜ ์ •์ˆ˜๋กœ ์ด๋ฃจ์–ด์ง„ ์ˆ˜์—ด์ด ์ฃผ์–ด์ง„๋‹ค. ์ˆ˜๋Š” -1,000๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๊ณ , 1,000๋ณด๋‹ค ์ž‘๊ฑฐ๋‚˜ ๊ฐ™์€ ์ •์ˆ˜์ด๋‹ค.

์ฒซ์งธ ์ค„์— ๋‹ต์„ ์ถœ๋ ฅํ•œ๋‹ค.

 

ํ•ด๊ฒฐ

key point, ์—ฐ์†ํ•ฉ์ด ์Œ์ˆ˜๊ฐ€ ๋˜๋Š” ์ˆœ๊ฐ„ ๊ฐ€์žฅ ํฐ ์—ฐ์†ํ•ฉ์— ํฌํ•จ๋˜์ง€ ์•Š์Œ! ๊ณ ๋กœ ๊ฐฑ์‹ 

๋‚˜๋Š” ์Œ์ˆ˜๋ฅผ ๋งŒ๋‚˜๋ฉด ์ผ๋‹จ ๋”ํ•˜๊ณ  sum์ด ์Œ์ˆ˜์ผ ๋•Œ ๊ฐฑ์‹ ํ–ˆ๋Š”๋ฐ,
์•„๋ž˜์ฒ˜๋Ÿผ sum์ด ํ•ญ์ƒ ์–‘์ˆ˜์ผ ๋•Œ๋งŒ ๋”ํ•ด๋„ ๋˜‘๊ฐ™์ด ํ’€ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

if (sum + a > 0){
	sum += a;
    Max = max(Max, sum);
}
else sum = 0;

 

์ฝ”๋“œ

๋ฉ”๋ชจ๋ฆฌ ์‹œ๊ฐ„
1112 KB 12 ms
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include<cstdio>
int n;
int main() {
    scanf("%d"&n);
    int sum = 0, a, max = -1001;
    while (n--) {
        scanf("%d"&a);
 
        if (sum <  0) {
            sum = a;
        }
        else sum += a;
        max = max < sum ? sum : max;
    }
    printf("%d", max);
    return 0;
}
cs

'๐Ÿ”ฅ PS(Problem Solving) ๐Ÿ”ฅ > BOJ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[BOJ] #14830 ๊ฒฝ์‚ฌ๋กœ  (0) 2020.05.21
[BOJ] #5397 ํ‚ค๋กœ๊ฑฐ  (0) 2020.05.21
[BOJ] #2512 ์˜ˆ์‚ฐ  (0) 2020.05.11
[BOJ] #13414 ์ˆ˜๊ฐ•์‹ ์ฒญ  (0) 2020.05.02
[BOJ] #1748 ์ˆ˜ ์ด์–ด ์“ฐ๊ธฐ 1  (0) 2020.04.23

๋Œ“๊ธ€