😎 κ³΅λΆ€ν•˜λŠ” μ§•μ§•μ•ŒνŒŒμΉ΄λŠ” μ²˜μŒμ΄μ§€?

[BAEKJOON C++] 10773_제둜 본문

πŸ¦₯ μ½”ν…Œ/BAEKJOON

[BAEKJOON C++] 10773_제둜

μ§•μ§•μ•ŒνŒŒμΉ΄ 2023. 8. 17. 10:42
728x90
λ°˜μ‘ν˜•
λ‚˜μ½”λ” κΈ°μž₯ μž¬λ―Όμ΄λŠ” λ™μ•„리 νšŒμ‹μ„ μ€€λΉ„ν•˜κΈ° μœ„ν•΄μ„œ μž₯λΆ€λ₯Ό κ΄€λ¦¬ν•˜λŠ” μ€‘이닀.

μž¬ν˜„μ΄λŠ” μž¬λ―Όμ΄λ₯Ό λ„μ™€μ„œ λˆμ„ κ΄€λ¦¬ν•˜λŠ” μ€‘인데, 
μ• μ„ν•˜κ²Œλ„ ν•­μƒ μ •μ‹ μ—†λŠ” μž¬ν˜„μ΄λŠ” λˆμ„ μ‹€μˆ˜λ‘œ μž˜λͺ» λΆ€λ₯΄λŠ” μ‚¬κ³ λ₯Ό μΉ˜κΈ° μΌμ‘€μ˜€λ‹€.

μž¬ν˜„μ΄λŠ” μž˜λͺ»λœ μˆ˜λ₯Ό λΆ€λ₯Ό λ•Œλ§ˆλ‹€ 0을 μ™Έμ³μ„œ, κ°€μž₯ μ΅œκ·Όμ— μž¬λ―Όμ΄κ°€ μ“΄ μˆ˜λ₯Ό μ§€μš°κ²Œ μ‹œν‚¨λ‹€.
μž¬λ―Όμ΄λŠ” μ΄λ ‡κ²Œ λͺ¨λ“  μˆ˜λ₯Ό λ°›μ•„ μ μ€ ν›„ κ·Έ μˆ˜μ˜ ν•©μ„ μ•Œκ³  μ‹Άμ–΄ ν•œλ‹€. μž¬λ―Όμ΄λ₯Ό λ„μ™€μ£Όμž!

μž…λ ₯
첫 λ²ˆμ§Έ μ€„에 μ •μˆ˜ Kκ°€ μ£Όμ–΄μ§„λ‹€. (1 ≤ K ≤ 100,000)
이후 K개의 μ€„에 μ •μˆ˜κ°€ 1κ°œμ”© μ£Όμ–΄μ§„λ‹€. 

μ •μˆ˜λŠ” 0μ—μ„œ 1,000,000 μ‚¬μ΄μ˜ κ°’을 κ°€μ§€λ©°, 
μ •μˆ˜κ°€ "0" μΌ κ²½μš°μ—λŠ” κ°€μž₯ μ΅œκ·Όμ— μ“΄ μˆ˜λ₯Ό μ§€μš°κ³ , μ•„닐 κ²½μš° ν•΄λ‹Ή μˆ˜λ₯Ό μ“΄λ‹€.
μ •μˆ˜κ°€ "0"일 κ²½μš°μ— μ§€μšΈ μˆ˜ μžˆλŠ” μˆ˜κ°€ μžˆμŒμ„ λ³΄μž₯ν•  μˆ˜ μžˆλ‹€.

좜λ ₯
μž¬λ―Όμ΄κ°€ μ΅œμ’…μ μœΌλ‘œ μ μ–΄ λ‚Έ μˆ˜μ˜ ν•©μ„ μΆœλ ₯ν•œλ‹€. 
μ΅œμ’…μ μœΌλ‘œ μ μ–΄λ‚Έ μˆ˜μ˜ ν•©μ€ 2^31-1보닀 μž‘κ±°λ‚˜ κ°™μ€ μ •μˆ˜μ΄λ‹€
// [10773] 제둜

/*
λ‚˜μ½”λ” κΈ°μž₯ μž¬λ―Όμ΄λŠ” 동아리 νšŒμ‹μ„ μ€€λΉ„ν•˜κΈ° μœ„ν•΄μ„œ μž₯λΆ€λ₯Ό κ΄€λ¦¬ν•˜λŠ” 쀑이닀.

μž¬ν˜„μ΄λŠ” 재민이λ₯Ό λ„μ™€μ„œ λˆμ„ κ΄€λ¦¬ν•˜λŠ” 쀑인데, 
μ• μ„ν•˜κ²Œλ„ 항상 μ •μ‹ μ—†λŠ” μž¬ν˜„μ΄λŠ” λˆμ„ μ‹€μˆ˜λ‘œ 잘λͺ» λΆ€λ₯΄λŠ” 사고λ₯Ό 치기 μΌμ‘€μ˜€λ‹€.

μž¬ν˜„μ΄λŠ” 잘λͺ»λœ 수λ₯Ό λΆ€λ₯Ό λ•Œλ§ˆλ‹€ 0을 μ™Έμ³μ„œ, κ°€μž₯ μ΅œκ·Όμ— μž¬λ―Όμ΄κ°€ μ“΄ 수λ₯Ό μ§€μš°κ²Œ μ‹œν‚¨λ‹€.
μž¬λ―Όμ΄λŠ” μ΄λ ‡κ²Œ λͺ¨λ“  수λ₯Ό λ°›μ•„ 적은 ν›„ κ·Έ 수의 합을 μ•Œκ³  μ‹Άμ–΄ ν•œλ‹€. 재민이λ₯Ό λ„μ™€μ£Όμž!

μž…λ ₯
첫 번째 쀄에 μ •μˆ˜ Kκ°€ 주어진닀. (1 ≤ K ≤ 100,000)
이후 K개의 쀄에 μ •μˆ˜κ°€ 1κ°œμ”© 주어진닀. 

μ •μˆ˜λŠ” 0μ—μ„œ 1,000,000 μ‚¬μ΄μ˜ 값을 가지며, 
μ •μˆ˜κ°€ "0" 일 κ²½μš°μ—λŠ” κ°€μž₯ μ΅œκ·Όμ— μ“΄ 수λ₯Ό μ§€μš°κ³ , 아닐 경우 ν•΄λ‹Ή 수λ₯Ό μ“΄λ‹€.
μ •μˆ˜κ°€ "0"일 κ²½μš°μ— μ§€μšΈ 수 μžˆλŠ” μˆ˜κ°€ μžˆμŒμ„ 보μž₯ν•  수 μžˆλ‹€.

좜λ ₯
μž¬λ―Όμ΄κ°€ μ΅œμ’…μ μœΌλ‘œ 적어 λ‚Έ 수의 합을 좜λ ₯ν•œλ‹€. 
μ΅œμ’…μ μœΌλ‘œ 적어낸 수의 합은 2^31-1보닀 μž‘κ±°λ‚˜ 같은 μ •μˆ˜μ΄λ‹€
*/

#define _CRT_SECURE_NO_WARNINGS
// ν‘œμ€€ μŠ€νŠΈλ¦Όμ—μ„œ 읽기 및 μ“°κΈ°λ₯Ό μ œμ–΄ν•˜λŠ” 개체λ₯Ό μ„ μ–Έ
#include <iostream>
#include <algorithm>    // find
#include <string>
#include <cmath>        // abs
#include <vector>
#include <queue>
#include <stack>
using namespace std;

int main() {
	stack<int> s;
	int K;
	int num;
	int stack_size;
	int sum = 0;

	cin >> K;	

	for (int i = 0; i < K; i++) {
		cin >> num;	
		if (num == 0) {
			// top이 κ°€λ¦¬ν‚€λŠ” μ›μ†Œλ₯Ό μ‚­μ œ
			s.pop();	
		}
		else
			// μŠ€νƒμ— 데이터(element)λ₯Ό μ‚½μž…
			s.push(num);
	}

	stack_size = s.size();
	for (int i = 0; i < stack_size; i++) {
		// μŠ€νƒμ˜ 맨 μœ„μ— μžˆλŠ” 인자λ₯Ό λ°˜ν™˜
		sum += s.top();
		s.pop();
	}

	cout << sum;
	return 0;
}

728x90
λ°˜μ‘ν˜•

'πŸ¦₯ μ½”ν…Œ > BAEKJOON' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

[BAEKJOON C++] 13458_μ‹œν—˜ 감독  (0) 2023.08.19
[BAEKJOON C++] 23291_μ–΄ν•­ 정리  (0) 2023.08.18
[BAEKJOON C++] 5800_성적 톡계  (0) 2023.08.17
[BAEKJOON C++] 11655_ROT13  (0) 2023.08.17
[BAEKJOON C++] 11047_동전 0  (0) 2023.08.17
Comments