본문 바로가기
728x90

전체 글206

[BOJ/백준] 17299 오등큰수 ● [문제번호 17299] 오등큰수 https://www.acmicpc.net/problem/17299 17299번: 오등큰수 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째에 수열 A의 원소 A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)이 주어진다. www.acmicpc.net ● 알아야 할 것 : stack, vector 자료구조와 메소드 ● 풀이 과정 : 전 단계 문제의 풀이를 활용 (참고 할 것 링크) : 그러나 '등장횟수 구하기' 와 'index -> v[ index ] -> cnt[ v[ index ] ]' 주의 ● 주의 할 것 : 입력 된 vector의 각 원소 등장 횟수를 구할 때 주의 주어진 입력 배열의 크기와 입력 배열의 원소 최댓.. 2021. 7. 26.
[BOJ/백준] 17298 오큰수 ● [문제번호 17298] 오큰수 https://www.acmicpc.net/problem/17298 17298번: 오큰수 첫째 줄에 수열 A의 크기 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째에 수열 A의 원소 A1, A2, ..., AN (1 ≤ Ai ≤ 1,000,000)이 주어진다. www.acmicpc.net ● 알아야 할 것 : stack, vector 자료구조와 메소드 ● 풀이 과정 : vector로 구현해도 시간 초과라 시간 단축할 방법을 고민하였다. : 문제 페이지 내에 '알고리즘 분류'에서 '스택' 이란 걸 보고 더 고민했지만 끝내 구글링을 하였다. : 입력된 vector v 의 index 값을 stack 에 저장하여 NGE 함수의 while문에서 활용한다. : 구글링에는 .. 2021. 7. 26.
[BOJ/백준] 10799 쇠막대기 ● [문제번호 10799] 쇠막대기 https://www.acmicpc.net/problem/10799 10799번: 쇠막대기 여러 개의 쇠막대기를 레이저로 절단하려고 한다. 효율적인 작업을 위해서 쇠막대기를 아래에서 위로 겹쳐 놓고, 레이저를 위에서 수직으로 발사하여 쇠막대기들을 자른다. 쇠막대기와 레이저 www.acmicpc.net ● 알아야 할 것 : stack 자료구조와 메소드 ● 풀이 과정 : 풀이과정을 쉽게 떠올리기 어려웠다. 1. 레이저 기준 왼쪽 쇠막대기의 갯수는 stack.size() 이고 이를 결과값에 포함한다. 2. 그리고 연속해서 ')' 가 나오는 경우 그 갯수 만큼 결과값에 포함한다. 3. 1-2 를 문자열 길이동안 반복한다. ● 주의 할 것 : 쇠막대기 갯수 = stack.siz.. 2021. 7. 26.
[BOJ/백준] 17413 단어 뒤집기 2 ● [문제번호 17413] 단어 뒤집기 2 https://www.acmicpc.net/problem/17413 17413번: 단어 뒤집기 2 문자열 S가 주어졌을 때, 이 문자열에서 단어만 뒤집으려고 한다. 먼저, 문자열 S는 아래와과 같은 규칙을 지킨다. 알파벳 소문자('a'-'z'), 숫자('0'-'9'), 공백(' '), 특수 문자('')로만 이루어져 www.acmicpc.net ● 알아야 할 것 : stack 자료구조와 메소드 ● 풀이 과정 : 태그('') 내부 단어는 바로 출력하고 태그('') 외부 단어는 stack에 저장한다. : stack에 저장한 단어를 출력하는 경우는 1. 반복문의 끝에 도달한 경우 2. '') { cout 2021. 7. 26.
[BOJ/백준] 10866 덱 ● [문제번호 10866] 덱 https://www.acmicpc.net/problem/10866 10866번: 덱 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net ● 알아야 할 것 : deque 자료구조와 메소드 ● 풀이 과정 : deque 자료구조와 메소드 사용을 묻는 간단한 문제 ● 주의 할 것 : pop_front(), pop_back() 연산은 반환값이 없으므로 (출력 후 삭제)로 작업 ● 참고 할 것 : NULL ● 풀이 코드 #include using namespace std; deque d; str.. 2021. 7. 26.
[C++/자료구조] deque std ● 참고한 링크 더보기 https://blockdmask.tistory.com/73 ● 헤더 include ● 생성자 deque [Variable Name]; ===멤버 함수=== ● deque.empty( ) : 비어있으면 true 반환 ● deque.size( ) : deque의 갯수 반환 ● deque[ index ] : deque의 index 원소 참조 ● deque.clear( ) : 모든 원소 제거 ● deque.front( ) : 맨 앞 원소 (반환 + 참조) ● deque.back( ) : 맨 뒤 원소 (반환 + 참조) ● deque.push_front( element ) : deque 맨 앞에 원소 추가 ● deque.pop_front( ) : deque 맨 앞 원소 삭제 (반환 X) ●.. 2021. 7. 26.
728x90