BAEKJOON/자료 구조 (48) 썸네일형 리스트형 백준 10845번 [큐](C++)-yes6686- 티스토리 백준 문제 풀이: 10845 [큐]문제 링크: https://www.acmicpc.net/problem/10845문제 설명:정수를 저장하는 큐를 구현하는 문제입니다. 큐에 대해 다음 명령을 처리합니다:push X: 정수 X를 큐에 넣습니다.pop: 큐에서 가장 앞에 있는 정수를 빼고 출력합니다. 큐가 비어있으면 -1을 출력합니다.size: 큐에 들어있는 정수의 개수를 출력합니다.empty: 큐가 비어있으면 1, 아니면 0을 출력합니다.front: 큐의 가장 앞에 있는 정수를 출력합니다. 큐가 비어있으면 -1을 출력합니다.back: 큐의 가장 뒤에 있는 정수를 출력합니다. 큐가 비어있으면 -1을 출력합니다.문제 해결 코드#include #include using namespace std;int main().. 백준 10828번 [스택](C++)-yes6686- 티스토리 백준 문제 풀이: 10828 [스택]문제 링크: https://www.acmicpc.net/problem/10828문제 설명:정수를 저장하는 스택을 구현하고, 주어진 명령을 처리하는 문제입니다. 스택에 대해 다음 명령을 처리합니다:push X: 정수 X를 스택에 넣습니다.pop: 스택에서 가장 위에 있는 정수를 제거하고 출력합니다. 스택이 비어있으면 -1을 출력합니다.size: 스택에 들어있는 정수의 개수를 출력합니다.empty: 스택이 비어있으면 1, 아니면 0을 출력합니다.top: 스택의 가장 위에 있는 정수를 출력합니다. 스택이 비어있으면 -1을 출력합니다.문제 해결 코드#include #include using namespace std;stack s;int main() { int n; .. 백준 10816번 [숫자 카드 2](C++)-yes6686- 티스토리 백준 문제 풀이: 10816 [숫자 카드 2]문제 링크: https://www.acmicpc.net/problem/10816문제 설명:숫자 카드가 여러 개 주어졌을 때, 각 숫자 카드가 몇 개 있는지 구하는 문제입니다. 입력으로 주어지는 숫자 범위는 -10,000,000부터 10,000,000까지입니다. 이를 효과적으로 처리하기 위해 정수 범위를 배열로 매핑하여 카운트를 저장합니다.문제 해결 코드#include using namespace std;int d[20000001];int arr[500001];int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); int n, m; cin >> n; for (int i = 0; i.. 백준 10773번 [제로](C++)-yes6686- 티스토리 백준 문제 풀이: 10773 [제로]문제 링크: https://www.acmicpc.net/problem/10773문제 설명:주어진 입력에 따라 숫자를 스택에 추가하거나 제거하는 작업을 수행합니다. 숫자 0이 입력되면, 가장 최근에 추가된 숫자를 제거합니다. 최종적으로 스택에 남아 있는 숫자의 합을 출력하는 문제입니다.문제 해결 코드#include #include using namespace std;int main() { vector v; int n, x; cin >> n; for (int i = 0; i > x; if (x == 0) { v.pop_back(); } else { v.push_back(x); .. 백준 9012번 [괄호](C++)-yes6686- 티스토리 백준 문제 풀이: 9012 [괄호]문제 링크: https://www.acmicpc.net/problem/9012문제 설명:주어진 문자열이 올바른 괄호 문자열(Valid Parenthesis String, VPS)인지 판단하는 문제입니다. 문자열은 '('와 ')'로만 구성되며, 다음 조건을 만족해야 올바른 괄호 문자열로 간주됩니다:왼쪽 괄호 '('의 개수와 오른쪽 괄호 ')'의 개수가 같아야 합니다.왼쪽 괄호가 오른쪽 괄호보다 먼저 등장해야 합니다.문제 해결 코드#include using namespace std;int main() { int T; cin >> T; string s; int cnt = 0; while (T--) { cin >> s; for.. 백준 4949번 [균형잡힌 세상](C++)-yes6686- 티스토리 백준 문제 풀이: 4949 [균형잡힌 세상]문제 링크: https://www.acmicpc.net/problem/4949문제 설명:주어진 문자열이 균형잡힌 괄호 문자열인지 판단하는 문제입니다. 균형잡힌 문자열은 다음 조건을 만족해야 합니다:모든 여는 괄호 '(' 또는 '['가 적절한 닫는 괄호 ')' 또는 ']'와 매칭되어야 한다.괄호가 중첩되는 경우, 올바른 순서로 닫혀야 한다.문자열의 끝은 항상 마침표('.')로 표시되며, 입력이 '.' 하나만 있을 경우 프로그램을 종료합니다.문제 해결 코드#include #include #include using namespace std;int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); w.. 백준 2164번 [카드2](C++)-yes6686- 티스토리 백준 문제 풀이: 2164 [카드2]문제 링크: https://www.acmicpc.net/problem/2164문제 설명:1부터 N까지의 번호가 적힌 카드가 있다. 카드 뭉치의 맨 위에 있는 카드를 버린 뒤, 그다음 맨 위에 있는 카드를 카드 뭉치의 맨 아래로 옮기는 과정을 반복한다. 카드가 한 장 남을 때까지 이 과정을 계속했을 때 남는 카드 번호를 구하는 문제입니다.문제 해결 코드#include #include using namespace std;int main() { int n; cin >> n; queue q; // 카드 초기화 for (int i = 1; i 1) { q.pop(); // 맨 위 카드 버리기 q.push(q.front());.. 백준 14428번 [수열과 쿼리 16](C++)-yes6686- 티스토리 백준 문제 풀이: 14428 [수열과 쿼리 16]문제 링크: https://www.acmicpc.net/problem/14428문제 설명:수열이 주어질 때, 다음과 같은 두 가지 쿼리를 처리하는 프로그램을 작성합니다:1 x y: 수열의 x번째 원소를 y로 변경합니다.2 x y: 수열의 x번째 원소부터 y번째 원소까지 중 가장 작은 값의 인덱스를 출력합니다. (1부터 시작하는 인덱스 기준)만약 최소값이 여러 개인 경우, 인덱스가 가장 작은 값을 출력합니다.문제 해결 코드#include #include using namespace std;long long int arr[1000001];struct Seg { int idx; int mi;};Seg seg[400001];Seg go(int n, in.. 이전 1 2 3 4 5 6 다음