문제 링크: www.acmicpc.net/problem/4949 4949번: 균형잡힌 세상 하나 또는 여러줄에 걸쳐서 문자열이 주어진다. 각 문자열은 영문 알파벳, 공백, 소괄호("( )") 대괄호("[ ]")등으로 이루어져 있으며, 길이는 100글자보다 작거나 같다. 입력의 종료조건으로 맨 마 www.acmicpc.net 스택을 활용한 문제이다. 여는 괄호가 나왔을 때 스택에 넣어주고, 닫는 괄호가 나왔을 때 스택의 top(제일 최근에 들어간 여는 괄호)와 짝이 맞는지 확인한다. 짝이 맞지 않으면 flag를 false로 바꾸고 반복문을 탈출한다. 짝이 맞지 않는 경우가 없었어도 마지막에 여는 괄호만 나오고 닫는 괄호가 나오지 않았으면 올바른 문자열이 아니다. 이 경우 스택에 원소가 남아있다. flag가..
문제 링크: www.acmicpc.net/problem/2164 2164번: 카드2 N장의 카드가 있다. 각각의 카드는 차례로 1부터 N까지의 번호가 붙어 있으며, 1번 카드가 제일 위에, N번 카드가 제일 아래인 상태로 순서대로 카드가 놓여 있다. 이제 다음과 같은 동작을 카드가 www.acmicpc.net 코드 설명은 주석 처리함. #include #include using namespace std; int main() { int n; queue q; scanf("%d", &n); // 1~n번 카드를 큐에 넣어준다 for (int i = 1; i 1) { // 제일 위에 있는 카드..
문제 링크: www.acmicpc.net/problem/1966 1966번: 프린터 큐 첫 줄에 test case의 수가 주어진다. 각 test case에 대해서 문서의 수 N(100이하)와 몇 번째로 인쇄되었는지 궁금한 문서가 현재 Queue의 어떤 위치에 있는지를 알려주는 M(0이상 N미만)이 주어진다. 다음 www.acmicpc.net 큐와 우선순위 큐를 활용해 해결하는 문제다. 입력받을 때 큐에 {문서의 순서, 중요도}를 pair를 활용해 저장했고, 우선순위큐에 중요도를 넣어주었다. 이후 큐에 있는 모든 문서가 처리될 때까지 while문으로 반복한다. 맨 앞에 있는 문서를 꺼낸 다음(q.pop()) 해당 문서의 중요도가 남아있는 모든 문서 중 가장 높은 중요도와 일치하면(현재 문서의 중요도가 가장..
문제 링크: www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net C++의 스택 STL을 사용해 문제를 해결했다. 아래 포스트 참고 : crong-dev.tistory.com/13 [자료구조] 스택(stack) / 백준 10828 (C++) 지난 포스트에서 스택에 대해 알아보았다. 이전 포스트: https://crong-dev.tistory.com/10 [자료구조] 스택(stack) / 백준 10828 (C) 스택이란? 삽입과 제거가 한쪽 끝에서..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/c3m8TX/btqNU2JRwUH/sppq74N9Gaoc7tklKohkkK/img.png)
백준에서 소스 코드 채점했을 때 컴파일 에러가 뜨는 경우가 있습니다. "컴파일 에러" 문구를 클릭하면 에러 로그를 보여줍니다. 컴파일 에러 문구를 클릭하면 아래와 같은 에러 로그를 볼 수 있습니다. 확인하시고 디버깅해보세요! 개인 IDE에서는 잘 돌아가는데 백준에서는 안 된다면? 1. 언어 설정을 잘못한 경우 제대로 언어 설정을 했는지 확인해보세요. 2. 제대로 import/include를 안 해준 경우 IDE에서는 명시적으로 import/include하지 않아도 알아서 해당하는 헤더 혹은 라이브러리 등을 찾아 사용하는 경우가 있습니다. 그럴 때는 아래와 같은 온라인 IDE에서 확인해봅시다. ideone.com/ Ideone.com Ideone is something more than a pastebin..
문제 링크: www.acmicpc.net/problem/10828 10828번: 스택 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net 소스 코드: #include #include #define MAX_STACK_SIZE 10000 int stack[MAX_STACK_SIZE]; // 스택 배열 int topIndex = -1; // 스택의 top의 인덱스 // push X: 정수 X를 스택에 넣는 연산이다. void push(int x) { stack[++topIndex] = x; } // pop: 스택에서 가장..
문제 링크: www.acmicpc.net/problem/1202 1202번: 보석 도둑 첫째 줄에 N과 K가 주어진다. (1 ≤ N, K ≤ 300,000) 다음 N개 줄에는 각 보석의 정보 Mi와 Vi가 주어진다. (0 ≤ Mi, Vi ≤ 1,000,000) 다음 K개 줄에는 가방에 담을 수 있는 최대 무게 Ci가 주어진다. (1 ≤ Ci www.acmicpc.net 한번에 짠 아래 코드. 테스트케이스는 문제 없이 동작했는데 채점 돌리니까 7%에서 시간 초과 났다. 고민하다가 결국 우선순위 큐 써서 해결했다. #include #include #include #define MAX 300000 using namespace std; long long ans = 0; int n, k; pair jewelry[..
문제 링크: www.acmicpc.net/problem/1065 1065번: 한수 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 www.acmicpc.net 문제 설명: 어떤 양의 정수 X의 각 자리가 등차수열을 이룬다면, 그 수를 한수라고 한다. 등차수열은 연속된 두 개의 수의 차이가 일정한 수열을 말한다. N이 주어졌을 때, 1보다 크거나 같고, N보다 작거나 같은 한수의 개수를 출력하는 프로그램을 작성하시오. 문제 접근 방법: N은 1000이하의 자연수이므로 init()함수를 통해 1~1000까지 한수인지 아닌지를 배열 hansoo에 저장해뒀다. ha..
- Total
- Today
- Yesterday
- Dash
- 코테후기
- 자료구조
- 큐
- plotly
- 회고
- 스택
- 다이나믹프로그래밍
- React
- 알고리즘
- 카카오추천팀
- 개발
- 동적계획법
- 리액트
- 프로그래머스
- sql
- 우선순위큐
- 자바스크립트
- 후위표기식
- reactjs
- 코드포매터
- c++
- 컴퓨터과학
- dash-plotly
- JS
- 머신러닝
- MySQL
- dfs
- 백준
- 컴퓨터공학
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |