c++ 5

[C++] map 컨테이너

// map 컨테이너 /* - 연관 컨테이너 중 하나 - 노드 기반으로 이루어져 있는 '균형 이진 트리 구조' - Map은 Key와 value로 이뤄져있으며 pair 객체 형태로 저장됨 - Unique Key : key는 고유한 값이므로 중복이 불가능 - *단, multimap은 중복 key가 가능 - Ordered : map도 set과 마찬가지로 삽입이 되면서 자동 정렬됨 - *default 는 오름차순 - Allocater-aware: map container는 저장공간의 필요에 따라 allocater객체 사용 - = 동적할당 한다는 말 */ #include #include #include using namespace std; int main() { //생성 map m1; map m2; //map에 ..

[c++] vector 컨테이너 사용법

// Vector 컨테이너의 모든 것 // C++ STL의 Sequence Container 중 자주쓰는 vector #include #include using namespace std; int main() { vector v; //벡터 v 선언 // 00000 출력 vector v2(5); //0으로 초기화된 5개의 원소를 가진 벡터 선언 // 22222 출력 vector v3(5, 2); //2로 초기화된 5개의 원소를 가진 벡터 생성 //v2를 v1복사해 생성 vector v4(v); /* vector의 멤버 함수 */ //참조한다는 것은 해당 데이터를 리턴한다는 뜻 //22222 출력 (5의 원소를 2의 값으로 할당) v.assign(5, 2); // idx번째 원소를 참조 // 2번째 원소참조하..

백준 3052 - 나머지 : [c++ STL] set 이용

- 입력받을 배열을 공간을 선언한다. - 입력받은 배열을 for문을 통해서 %42 해준다. - %42한 값은 set container에 넣어준다. 이때, set container는 중복 값을 받지 않기 때문에 나머지 중 같은 수는(이미 담긴 수) 제외되고 담긴다 - set container의 size를 구하면 담긴 원소 개수를 알 수 있다. => 10개의 값을 각 %42를 한 후, 나머지 값들 중 중복을 제외한 서로 다른 값의 나머지 개수만 구하기 // BJ 3052 #include #include using namespace std; int main(void) { int array[10]; int count = 0; for (int i = 0; i > array[i]; ..

[C++] 벡터 사용법 / 깊이우선탐색 DFS

- C++의 벡터는 동적 배열구조 클래스 - 자동으로 배열의 크기 조절과 추가 삭제 가능 - 모든 자료형에 대해 배열처럼 저장 가능 But 한번에 한 타입만 저장 가능 - 자바 벡터처럼 배열 크기 추가할 때, 기존 배열 크기의 100% 늘어남 vector integer_vector; vector double_vector; vector char_vector; - 벡터의 기본 함수 //iterator 반복자 begin() //beginning iterator 반환 end() //end iterato 반환 //추가 및 삭제 push_back(element) //벡터 제일 끝에 원소 추가 pop_back() //벡터 제일 끝 원소 삭제 //조회 [i] //i번째 원소 반환 at(i) //i번째 원소 반환 fro..