[swexpert] 1230. 암호문3 (C++, 연결리스트)
728x90
반응형
연결리스트를 구현을 하면 좋으련만 c++을 다시 공부하면서 stl도 아직 모르는게 많아서
문제 많이 풀면서 익숙해지는게 먼저인 것 같다.
#define _CRT_SECURE_NO_DEPRECATE
#include <iostream>
#include <string>
#include <list>
using namespace std;
int main(void) {
ios::sync_with_stdio(false);
cin.tie(NULL);
for (int tc = 1; tc <= 10; tc++) {
list<int> l;
int n,x,y,cur;
char tmp;
cin >> n; // 암호문 길이
for (int i = 0; i < n; i++) {
cin >> x;
l.push_back(x);
}
cin >> n; //명령어 개수
while (n--) {
cin >> tmp;
if (tmp == 'I') {
cin >> x >> y;
auto iter = l.begin();
for (int i = 0; i < x; i++) {
iter++;
}
for (int i = 0; i < y; i++) {
cin >> cur;
l.insert(iter, cur);
/*iter++;*/
}
}
else if (tmp == 'D') {
cin >> x >> y;
auto iter = l.begin();
for (int i = 0; i < x; i++) {
iter++;
}
for (int i = 0; i < y; i++) {
iter=l.erase(iter); // 지운 다음의 인덱스를 다시 업데이트 해줘야된다.
}
}
else if (tmp == 'A') {
cin >> y;
for (int i = 0; i < y; i++) {
cin >> cur;
l.push_back(cur);
}
}
}
cout << "#" << tc << " ";
auto iter = l.begin();
for (int i = 0; i < 10; i++) {
cout << *iter << " ";
iter++;
}
cout << "\n";
}
return 0;
}
728x90
반응형
'swexpert' 카테고리의 다른 글
[SWEA] 2948. 문자열 교집합 (C++, 해시) (0) | 2021.10.06 |
---|---|
[SWEA] 1256. K번째 접미어 (C++) (0) | 2021.10.06 |
[SWEXPERT] 1232. 사칙연산 (이진트리, C++, D4) (0) | 2021.10.01 |
[SWEA] 1209. SUM2 (C++, D3) (0) | 2021.10.01 |
[SWEA] 1216. 회문2 (C++, D3) (0) | 2021.10.01 |
TAGS.