BOJ

[BOJ알고리즘, C++]#18258_큐 2 BOJ 알고리즘 문제 풀이, 18258번 문제 큐 2 STL의 queue컨테이너를 활용하는 방법에 대해 알아보겠습니다. Overview 문제 풀이 코드 #0. 문제 #1. 풀이 1. 큐 [자료 구조]#0_선형 자료구조 [자료 구조] #0_선형 자료구조 선형 자료구조에 대해 알아보겠습니다. Overview 개념 스택 큐 원형 큐 배열 벡터 리스트 이중 연결 리스트 #0. 개념 1. 선형 자료구조? 선형 자료구조는 데이터를 일렬 webddevys.tistory.com 큐는 먼저 삽입된 데이터가 먼저 삭제되는 FIFO(First In First Out) 방식으로 동작하는 선형 자료구조입니다. 데이터 목록의 한쪽에서만(top) 접근이 가능한 스택과 달리, 큐는 데이터..
[BOJ알고리즘, C++]#7785_회사에 있는 사람 BOJ 알고리즘 문제 풀이, 7785번 회사에 있는 사람 Set 컨테이너를 활용하는 방법에 대해 알아보겠습니다. Overview 문제 풀이 코드 #0. 문제 1. 문제 #1. 풀이 1. Set 컨테이너 [Basic C++] #29_Set, MultiSet, STL 컨테이너 [Basic C++] #29_Set, MultiSet, STL 컨테이너 C++ 개발에서 STL 컨테이너에 대해 알아보겠습니다. C++가 제공하는 STL 컨테이너 중 Set과 MultiSet을 살펴보겠습니다. Set 1. 개념 Set은 STL에서 제공하는 연관 컨테 webddevys.tistory.com STL의 Set 컨테이너는 균형 이진트리로 구현한 노드 기반의 연관 컨테이너입니다..
[BOJ알고리즘, C++]#1874_스택 수열, 선형 자료구조, 스택 BOJ 알고리즘 문제 풀이, 1874번 스택 수열 선형 자료구조 중 스택을 활용해 수열을 나타냅니다. Overview 문제 풀이 코드 #0. 문제 1. 문제 #1. 풀이 1. 스택 [자료 구조]#0_선형 자료구조 [자료 구조] #0_선형 자료구조 선형 자료구조에 대해 알아보겠습니다. Overview 개념 스택 큐 원형 큐 배열 벡터 리스트 이중 연결 리스트 #0. 개념 1. 선형 자료구조? 선형 자료구조는 데이터를 일렬 webddevys.tistory.com 선형 자료구조는 데이터를 일렬로 저장하고 관리하는 자료구조로, 각 데이터는 앞이나 뒤에 위치한 데이터와 연결되어 있습니다. 그리고, 선형 자료구조는 논리적 순서와 물리적 순서가 일..
· 알고리즘
#0. 개념 1. 이분 탐색? [정의] : 이분 탐색은 정렬된 배열에서 특정 값을 찾기위해 사용되는 탐색 알고리즘입니다. [동작 방식] 1. 먼저, 배열의 왼쪽 경계와 오른쪽 경계를 설정합니다. 2. 중간 값을 얻어 찾고자하는 특정 값과 그 크기를 비교합니다. 3. 위 비교 연산의 결과에 따라서 왼쪽 경계 혹은 오른쪽 경계를 변경합니다. 4. 위 작업을 반복하며, 최종적으로 특정 값을 찾아냅니다. * 주의할 점 : 이분 탐색은 '정렬된' 배열에 사용되는 탐색 알고리즘입니다. 2. 코드 int BinarySearch(vector v, int l, int r, int x) { while (l x) r = mid - 1; // 찾고자 하는 값이 중간값보다 큰 경우, 오른쪽 배열 탐색 else l = mid +..
[BOJ알고리즘, C++]#1676_팩토리얼의 0의 개수, 소인수분해 BOJ 알고리즘 문제 풀이, 1676_팩토리얼의 0의 개수 소인수분해의 성질을 이용해 N! 의 뒷자리 0의 개수를 구합니다. 문제 풀이 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 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 9..
[BOJ 알고리즘, C++] #1764_듣보잡, Set BOJ 알고리즘 문제 풀이, 1764_듣보잡, Set 문제 Set 컨테이너를 활용해 두 집합의 중복 원소를 선별합니다. 문제 풀이 이 문제도 역시 Set 컨테이너를 활용하면 간단하게 풀 수 있는 문제입니다. 먼저, 입력으로 받은 문자열이 이전에도 입력으로 들어왔는지, 즉 중복된 문자열이 들어왔는지 체크하기 위해 Set 컨테이너에 선제적으로 문자열들을 삽입합니다. 중복되는 문자열일 경우 별도의 Vector 컨테이너를 생성해 항목들을 삽입합니다. "사전순으로 나열하라" 조건을 충족하기 위해 Vector 컨테이너의 정렬을 수행하고 답을 출력합니다! 코드 #include #include #include #include #include using namesp..
[BOJ 알고리즘, C++] #14425_문자열 집합, Map BOJ 알고리즘 문제 풀이, 14425_문자열 집합 문제 Map 컨테이너를 활용하여 집합에 속해있는 문자열을 선별합니다. 문제 풀이 Map 컨테이너 자료구조를 활용하는 아주 간단한 문제입니다. 먼저, map 을 선언하고, 집합 S에 해당하는 문자열을 Key - 간단한 Boolean 변수를 Value로 삽입합니다 다음으로, 주어진 문자열을 Key로 Map 컨테이너에서 탐색을 진행하는 방향으로 구현했습니다. 이때, "operator []" 는 Map에 없는 새로운 "Key"값으로 수행하면 임의의 Value가 삽입되기 때문에, 집합 S의 문자열들은 모두 "true" 변수와 짝지어 놓도록 합니다! 코드 #include #include #include..
[BOJ 알고리즘, C++] #10816_숫자 카드 2, lower_bound, upper_bound BOJ 알고리즘 문제 풀이, 10816_숫자 카드2 정렬 알고리즘을 통해 주어진 숫자 카드가 존재하는지 탐색합니다. 문제 풀이 1. Map 컨테이너 활용 // 1. Map 컨테이너를 활용했지만, 2번 코드보다 소요 시간과 메모리 사용량이 비교적 훨씬 높음... #include #include #include typedef long long ll; using namespace std; int main() { ios_base::sync_with_stdio(false); cin.tie(NULL); cout.tie(NULL); int N, M; // 숫자 + 개수 map m; vector v; cin >> N;..
[BOJ 알고리즘, C++] #10815_숫자 카드, 이진 탐색, Binary Search BOJ 알고리즘 문제 풀이, 10815_숫자 카드 이분 탐색을 통해 주어진 숫자 카드가 존재하는지 탐색합니다. Overview 문제 풀이 코드 #1. 문제 #2. 풀이 1. 이진 탐색(Binary Search) Details [정의] : 정렬된 원소 목록을 반으로 나누어 찾고자 하는 원소와 중심이 되는 원소를 비교하고, 작다면 왼쪽으로 크다면 오른쪽으로 중심 원소를 옮겨서 반복적으로 비교 작업을 수행합니다. 시간 복잡도는 O(log n)으로 선형 탐색보다 뛰어난 성능을 보여줍니다! 다만 몇 가지 단점들이 물론 존재합니다! [특징] : 정렬 상태의 자료구조에서만 가능합니다. 그리고, 연결 리스트에서 사용이 힘듭니다...
[BOJ 알고리즘, C++] #25305_커트라인, 정렬 알고리즘, STL, 내림차순 BOJ 알고리즘 문제 풀이, 25305_커트라인 STL이 제공하는 정렬 알고리즘을 통해 커트라인 바로 위 점수를 출력하는 문제 문제 풀이 [Basic C++] #32-3_STL 정렬 알고리즘 [Basic C++] #32-3_STL 정렬 알고리즘 C++ 개발에서 표준 라이브러리(STL)에 대해 알아보겠습니다. "전문가를 위한 C"의 15 항목, "C++ 표준 라이브러리 살펴보기"에 해당하는 내용입니다. 정렬 알고리즘 webddevys.tistory.com // greater() : 내림차순 정렬 // less() : 오름차순 정렬, Default sort ( begin(v), end(v), less() or greater..
Hardii2
'BOJ' 태그의 글 목록 (11 Page)