jakeehoson   8달 전

아직 코린이라서 제 나름대로 로직을 생각해서 해봤습니다.

로직은 이렇습니다.

1. 연속된 0이상의 수들은 모두 합친다.

2. 모두 합친 수중 가장 큰 수를 기준으로 잡는다.

3. 왼쪽 끝에서부터 가장 큰수까지 진행할 때

  3-1. 양수면 음수가 될 때 까지 더한다. 음수가되면 수를 버리고 다시 새로운 양수를 찾는다.

  3-2. 음수면 그냥 패스한다.

  3.3 가장 큰 수까지 도달했을 때 여전히 양수면 결과값에 더해준다.

4. 오른 쪽 끝에서부터 위와 동일한 과정을 거침.

예시를 들면

2 1 -4 3 4 -4 6 5 -5 1

3 -4 7 -4 (11) -5 1

-1 (3 + 11) -5 1

-1 14 -4

14

이런 식입니다.

채점하자마자 틀려서 게시판 보면서 반례 찾아다녔는데 못찾았습니다.

시도해 본 반례는 제가 직접 본 반례들이랑

https://www.acmicpc.net/board/...

이 글 참고했습니다.

jakeehoson   8달 전

다시 생각해보니 로직이 훨씬 간단할 수 있었네요.. 소스는 정답이니 주의해주세요

댓글을 작성하려면 로그인해야 합니다.