SW Expert Academy
SW ํ๋ก๊ทธ๋๋ฐ ์ญ๋ ๊ฐํ์ ๋์์ด ๋๋ ๋ค์ํ ํ์ต ์ปจํ ์ธ ๋ฅผ ํ์ธํ์ธ์!
swexpertacademy.com



์ฝ๋
import java.util.Scanner;
import java.util.Stack;
public class Solution {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int t = scan.nextInt();
for(int tc=1; tc<=t; tc++) {
int K = scan.nextInt();
Stack<Integer> stack = new Stack<>();
int sum = 0;
for(int i=0; i<K; i++) {
int num = scan.nextInt();
// 0์ผ๊ฒฝ์ฐ ๊ฐ์ฅ ๋ง์ง๋ง ์๋ฅผ ๋นผ๊ณ , 0์ด ์๋๊ฒฝ์ฐ ์คํ์ ๋ฃ๊ธฐ
if(num == 0) {
stack.pop();
} else {
stack.push(num);
}
}
// ์คํ์ ๋ชจ๋ ์์๋ค ๋ํ๊ธฐ.
while(!stack.isEmpty()) {
sum += stack.pop();
}
System.out.println("#" + tc + " " + sum);
}
scan.close();
}
}
ํ์ด
๋ฌธ์ ์์ ํต์ฌ๋ถ๋ถ์ ๋ค์์ด๋ค.
0์ ์ธ์ณ์ ๊ฐ์ฅ ์ต๊ทผ์ ์ผ๋ ์๋ฅผ ์ง์ด๋ค.
์ ๋ฌธ์ฅ์ผ๋ก ์คํ์ ์ ์ถํ ์ ์๋ค.
๋ฌธ์ ์์ ์คํ์ ๋น์ด์๋ ์ํ์์ 0์ด์ค๋ ์ํฉ์ ์์ค๋ ๊ฒ ๊ฐ๋ค.
๋ฐ๋ผ์ 0์ผ๋๋ ์ต๊ทผ๊ฐ์ ์ง์ฐ๊ณ (pop), 0์ด ์๋๋๋ ์คํ์ ๋ฃ๋๋ค(push)
๊ทธ ํ ์คํ์ ๋ชจ๋ ์์๋ค์ ๋ํ๋ฉด ๋๋ค.
์ ๋ฒ์๋ ์๊ฐ์ด๊ณผ๊ฐ ๋ฐ์ํ์๋๋ฐ, ArrayList๋ก ํ๊ณ ์์ํ๊ฒ ํ์ด์ ์๊ฐ์ด๊ณผ๊ฐ ๋ฐ์ํ์๋ค.
'Algorithm' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[SW Expert Academy] - (D3)2817. ๋ถ๋ถ ์์ด์ ํฉ (0) | 2020.07.19 |
---|---|
[SW Expert Academy] - (D3)4299. ํํ์ด์ ์ฌ๋์ ํ์ด๋ฐ (0) | 2020.07.17 |
[SW Expert Academy] - (D3)9997. ๋ฏธ๋๋ฉ๋ฆฌ์ฆ ์๊ณ (0) | 2020.07.10 |
[SW Expert Academy] - (D4)7829. ๋ณด๋ฌผ์ ํํ (0) | 2020.07.04 |
[SW Expert Academy] - (D3)5162. ๋ ๊ฐ์ง ๋นต์ ๋๋ ๋ง (0) | 2020.07.01 |
๋๊ธ