백준 9935번 : 문자열 폭발 / C++
2023. 3. 13. 20:38ㆍ개인공부/코딩테스트
https://www.acmicpc.net/problem/9935
처음 과정에서 STL에서 stack을 이용했었는데 stack 이 배열처럼 접근하지 못해서 시간초과가 나서 배열로 바꿔서 해결했다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main()
{
cin.tie(NULL);
cout.tie(NULL);
ios::sync_with_stdio(false);
string str, boom;
cin >> str >> boom;
vector<char> S;
for (int i = 0; i < (int)str.size(); ++i)
{
char c = str[i];
S.push_back(c);
if (boom.size() <= S.size())
{
string prev = {};
for (int e = boom.size(); 0 < e; --e)
{
prev += S[S.size() - e];
}
if (prev == boom)
{
for (int i = 0; i < prev.size(); ++i)
S.pop_back();
}
}
}
string ans = {};
for (int i = 0; i < S.size(); ++i)
{
ans += S[i];
}
if (ans.size() == 0)
cout << "FRULA";
else
cout << ans;
}
|
cs |
'개인공부 > 코딩테스트' 카테고리의 다른 글
백준 17299번 : 오등큰수 / C++ (0) | 2023.03.14 |
---|---|
백준 172938번: 오큰수 / C++ (0) | 2023.03.13 |
백준 11286번 : 절댓값 힙 / C++ (0) | 2023.03.12 |
백준 1654번: 랜선 자르기 / C++ (0) | 2023.03.12 |
백준 1759번: 암호 만들기 / C++ (0) | 2023.03.11 |