728x90 전체 글206 [BOJ/백준] 1158 요세푸스 문제 ● [문제번호 1158] 요세푸스 문제 https://www.acmicpc.net/problem/1158 1158번: 요세푸스 문제 첫째 줄에 N과 K가 빈 칸을 사이에 두고 순서대로 주어진다. (1 ≤ K ≤ N ≤ 5,000) www.acmicpc.net ● 알아야 할 것 : list 자료구조와 메소드 ● 풀이 과정 : 주된 작업이 삭제 연산이므로 list로 구현 : 노드가 1개 남을 때 까지 재귀 : K 번째로 이동 -> 삭제 -> ( list.end()인 경우 처음으로 옮기기 ) -> 재귀 ● 주의 할 것 : K 번째 이지만 이동 횟수는 K-1 임 : 삭제한 다음 iterator가 list.end()를 가리킬 수 있음 ● 참고 할 것 : NULL ● 풀이 코드 #include using names.. 2021. 7. 26. [BOJ/백준] 10845 큐 ● [문제번호 10845] 큐 https://www.acmicpc.net/problem/10845 10845번: 큐 첫째 줄에 주어지는 명령의 수 N (1 ≤ N ≤ 10,000)이 주어진다. 둘째 줄부터 N개의 줄에는 명령이 하나씩 주어진다. 주어지는 정수는 1보다 크거나 같고, 100,000보다 작거나 같다. 문제에 나와있지 www.acmicpc.net ● 알아야 할 것 : queue 자료구조와 메소드 ● 풀이 과정 : queue 자료구조와 메소드 사용을 묻는 간단한 문제 ● 주의 할 것 : NULL ● 참고 할 것 : NULL ● 풀이 코드 #include using namespace std; queue q; string cmd; int N, X; int main() { ios::sync_with_.. 2021. 7. 26. [C++/자료구조] queue std ● 참고한 링크 더보기 https://twpower.github.io/76-how-to-use-queue-in-cpp ● 헤더 include ● 생성자 queue [Variable Name]; ===멤버 함수=== ● queue.empty( ) : 비어있으면 true 반환 ● queue.size( ) : queue의 갯수 반환 ● queue.front( ) : 맨 앞 원소 반환 + 참조 ● queue.back( ) : 맨 뒤 원소 반환 + 참조 ● queue.push( element ) : queue 맨 뒤에 원소 추가 ● queue.pop( ) : queue 맨 앞 원소 삭제 2021. 7. 26. [C++/자료구조] list std ● 참고한 링크 더보기 https://blockdmask.tistory.com/76 ● 헤더 include ● 생성자 list [Variable Name]; list lt2(lt1); // lt2는 lt1 list를 복사해서 생성 ===멤버 함수=== ● list.assign( n , element ) : element값을 가지는 n개 노드 할당 ● list.size( ) : list의 갯수 반환 ● list.front( ) : 첫 번째 노드 반환 + 참조 ● list.back( ) : 마지막 노드 반환 + 참조 ● list.begin( ) : 첫 번째 노드 가리킴 (iterator와 사용) : list::iterator it; : it = list.begin(); ● list.end( ) : '마지막의.. 2021. 7. 26. [BOJ/백준] 1406 에디터 ● [문제번호 1406] 에디터 https://www.acmicpc.net/problem/1406 1406번: 에디터 첫째 줄에는 초기에 편집기에 입력되어 있는 문자열이 주어진다. 이 문자열은 길이가 N이고, 영어 소문자로만 이루어져 있으며, 길이는 100,000을 넘지 않는다. 둘째 줄에는 입력할 명령어의 개수 www.acmicpc.net ● 알아야 할 것 : list 자료구조와 메소드 : iterator 메소드 ● 풀이 과정 : vector를 사용하면 삽입, 삭제 메소드에서 시간초과 가능성을 고려하여 list로 구현함 : 문제에서 주어지는 조건과 명령을 그대로 코드에 반영 + 2개의 stack을 이용하여 구현 가능함 ( stack 커서 stack ) ● 주의 할 것 : iterator 삭제 메소드의 .. 2021. 7. 26. [C++ 자료구조] vector std ● 참고한 링크 더보기 https://blockdmask.tistory.com/70 : max_element, min_element 관한 링크 https://notepad96.tistory.com/entry/C-Vector-%EC%B5%9C%EB%8C%80%EA%B0%92-%EC%B5%9C%EC%86%8C%EA%B0%92-%EC%9D%B8%EB%8D%B1%EC%8A%A4-%EA%B5%AC%ED%95%98%EA%B8%B0 ● 헤더 include ● 생성자 vector [Variable Name]; vector [Variable Name]; vector v2(v1); // v2는 v1 vector를 복사해서 생성 ===멤버 함수=== ● vector.empty( ) : 비어 있으면 true 반환 ● vect.. 2021. 7. 26. 이전 1 ··· 27 28 29 30 31 32 33 ··· 35 다음 728x90