250x250
반응형
Notice
Recent Posts
Recent Comments
Link
N
(SWEA c++)1234. [S/W 문제해결 기본] 10일차 - 비밀번호 본문
728x90
반응형
스택을 이용한 문제.
n 길이의 숫자를 받아오며, string 형태로 숫자를 저장한다.
n개의 길이만큼 char형 stack s에 저장을 하는데 여기서 비밀번호를 만드는 과정을 적용한다.
1. s가 비어있지 않고 top과 i번째의 숫자가 같으면 pop().
2. s가 비어있거나 top과 i번째의 숫자가 같지 않으면 push()
이를 실행하고 ans 스택에 거꾸로 넣어주고 출력해주면 끝..!
#include <iostream>
#include <stack>
#include <string>
#include <algorithm>
using namespace std;
int main(void)
{
for(int t = 1; t <= 10; t++)
{
int n;
string tmp;
stack<char> s, ans;
cin >> n >> tmp;
for(int i = 0; i < tmp.size(); i++)
{
if(!s.empty() && s.top() == tmp[i])
s.pop();
else
s.push(tmp[i]);
}
cout << "#" << t << " ";
while(!s.empty())
{
ans.push(s.top());
s.pop();
}
while(!ans.empty())
{
cout << ans.top();
ans.pop();
}
cout << endl;
}
return 0;
}
728x90
반응형
'SW Expert Academy' 카테고리의 다른 글
(SWEA c++)1244. [S/W 문제해결 응용] 2일차 - 최대 상금 (4) | 2020.10.14 |
---|---|
(SWEA c++)1240. [S/W 문제해결 응용] 1일차 - 단순 2진 암호코드 (0) | 2020.10.14 |
(SWEA c++)1230. [S/W 문제해결 기본] 8일차 - 암호문3 (0) | 2020.10.13 |
(SWEA c++)1229. [S/W 문제해결 기본] 8일차 - 암호문2 (0) | 2020.10.13 |
(SWEA c++)1228. [S/W 문제해결 기본] 8일차 - 암호문1 (0) | 2020.10.13 |