우규이인우윀
Eager To Learn 🌌
우규이인우윀
전체 방문자
였늘
μ–΄μ œ

λΈ”λ‘œκ·Έ 메뉴

  • 🏑 ν™ˆ
  • πŸš€ κΉƒν—ˆλΈŒ
  • β›… νƒœκ·Έ ν΄λΌμš°λ“œ
  • λΆ„λ₯˜ 전체보기 (217)
    • πŸ‘¨πŸ»‍πŸ’» PS (170)
      • JAVA (82)
      • MYSQL (1)
      • Docker (2)
      • PYTHON (24)
      • LeetCode 150 (39)
      • Algorithm 기법 (1)
      • 바킹독 (21)
    • λΈ”λ‘œκ·Έ 이사 (0)
    • Error (1)
    • CS (15)
      • DataBase (2)
      • OS (7)
      • Network (1)
      • Spring (1)
      • 자료ꡬ쑰 (3)
      • Java (1)
    • Learned (7)
      • Spring (7)
    • κ°œλ°œμ„œμ  (15)
      • 가상 λ©΄μ ‘ μ‚¬λ‘€λ‘œ λ°°μš°λŠ” λŒ€κ·œλͺ¨ μ‹œμŠ€ν…œ 섀계 기초 (1)
      • 였브젝트 - 쑰영호 (7)
      • μΉœμ ˆν•œ SQL νŠœλ‹ (7)
    • 회고 (2)
hELLO Β· Designed By μ •μƒμš°.
우규이인우윀

Eager To Learn 🌌

πŸ‘¨πŸ»‍πŸ’» PS/JAVA

[JAVA] λ°±μ€€ 1912번 【연속합】

2022. 9. 24. 16:36


이제 λΆ€λΆ„μˆ˜μ—΄ κ΅¬ν•˜λŠ” λ¬Έμ œλŠ” 해닡이 잘 λ‚˜μ˜€λŠ” 것 κ°™λ‹€.

 

이 λ¬Έμ œλŠ”, λˆ„μ ν•©μ΄ -값이 λ˜μ§€ μ•ŠλŠ”ν•œ κ²Œμ†ν•΄μ„œ λ”ν•΄μ„œ dp값에 μ €μž₯ν•˜κ³ , μŒμˆ˜κ°€ 되면 μ–΄λ–€μˆ˜λ₯Ό 더해도, μ•ˆλ”ν•˜λŠ”κ²Œ 이읡인 상황이 되기 λ•Œλ¬Έμ—, λˆ„μ ν•©μ΄ μŒμˆ˜κ°€ λ˜λŠ” ν•΄λ‹Ή 인덱슀의 dp값을 0으둜 μž…λ ₯μ‹œν‚€κ²Œλ” κ΅¬ν˜„ν•˜μ˜€λ‹€.

 

예제문제λ₯Ό 톡해 μ‚΄νŽ΄λ³΄λ„λ‘ ν•˜μž.

 

 

 

 

 

 

 

 

 

μ΅œμ’… dp배열은 μœ„μ™€ 같이 μƒμ„±λ˜κ³ , dpλ°°μ—΄μ—μ„œ κ°€μž₯ 큰 μ›μ†Œλ₯Ό μΆ”μΆœν•˜λ©΄ λλ‚œλ‹€!

 

그리고 λͺ¨λ“  μ›μ†Œκ°€ 0보닀 μž‘μ€ 경우, λˆ„μ ν•©μ˜ μ΅œλŒ“κ°’μ€ μ›λž˜ λ°°μ—΄μ˜ 음수 μ›μ†Œλ“€ 쀑 κ°€μž₯ 큰값이 λœλ‹€.

 

이 뢀뢄에 μœ μ˜ν•˜λ©΄ λœλ‹€.

 

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;

public class Main {
	public static void main(String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		int N = Integer.valueOf(br.readLine());
		long[] dp = new long[N + 1];
		long[] array = new long[N + 1];
		String[] input = br.readLine().split(" ");

		for (int i = 1; i <= N; i++) {
			array[i] = Integer.valueOf(input[i - 1]);
		}
		
		dp[1] = array[1];

		for (int i = 1; i <= N; i++) {
			dp[i] = array[i] + dp[i - 1];
			if (dp[i] < 0) {
				dp[i] = 0;
			}
		}

		Arrays.sort(dp);
		Arrays.sort(array);
//		System.out.println(Arrays.toString(dp));
//		System.out.println(Arrays.toString(array));
		if (dp[N] == 0) {
			System.out.println(array[N - 1]);
		} else
			System.out.println(dp[N]);
	}
}
    'πŸ‘¨πŸ»‍πŸ’» PS/JAVA' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€
    • [JAVA] λ°±μ€€ 1699번 γ€μ œκ³±μˆ˜μ˜ 합】
    • [JAVA] λ°±μ€€ 2579번 【계단 였λ₯΄κΈ°γ€‘
    • [JAVA] λ°±μ€€ 11054번 【가μž₯ κΈ΄ 바이토닉 λΆ€λΆ„ μˆ˜μ—΄γ€‘
    • [JAVA] λ°±μ€€ 11722번 【가μž₯ κΈ΄ κ°μ†Œν•˜λŠ” λΆ€λΆ„ μˆ˜μ—΄γ€‘
    우규이인우윀
    우규이인우윀
    개발자 κΏˆλ‚˜λ¬΄

    ν‹°μŠ€ν† λ¦¬νˆ΄λ°”