일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 자료구조
- Django란
- 백준
- getline
- string 메소드
- 시간복잡도
- correlation coefficient
- 입/출력
- double ended queue
- 엑셀
- k-eta
- 프레임워크와 라이브러리의 차이
- iOS14
- string 함수
- 이분그래프
- vscode
- 표준 입출력
- Django Nodejs 차이점
- Django의 편의성
- 입출력 패턴
- 매크로
- 연결요소
- 알고리즘 공부방법
- c++
- EOF
- 2557
- UI한글변경
- 구조체와 클래스의 공통점 및 차이점
- 장고란
- scanf
- Today
- Total
목록알고리즘/문제해결을 위한 C++ 공부 (31)
Storage Gonie
cmath의 pow는 double형을 기본적으로 반환한다는 것을 알아두자. double형으로 반환되는 것을 사용하고 싶지 않다면, pow의 결과값을 int형으로 변환해주거나, 직접 구현할 수 있다. # cmath의 pow 사용하는 방법 #include #include using namespace std; int main() { cout
10으로 나누어가며 10으로 나눈 나머지를 찾으면 뒷자리부터 한자리씩 분리할 수 있음. #include using namespace std; int main() { int a = 1352; while(a != 0){ cout
break를 사용하면 가장 가까운 범위에 있는 for문만 멈출 뿐 바깥 for문은 계속된다. #include using namespace std; int main() { for (int i = 0; i < 4; i++){ for (int j = 0; j < 3; j++){ if (j == 0){ cout
C++에서는 보통 배열을 선언하면 디폴트 값으로 초기화 되어있는데, 초기화된 값을 2번 사용해야 하는 경우 memset을 사용하게 된다. #include bool check[1001]; int main() { memset(check, false, sizeof(check)); }
이 방식은 c++ 11부터 가능하다. #include #include using namespace std; int main() { vector arr(10, 3); for (int a : arr){ cout
용도 : sort()가 전체를 다 정렬시킨다면 nth_element()는 부분적으로 정렬을 시키는 함수이다. 1. 헤더파일 #include 2. 함수형태 - 시작과 끝 Iterator를 맨 왼쪽과 왼 오른쪽에 넣어주고, 가운데에 index로 어디 자리가 확정될 때까지 정렬을 진행할지 넣어줌. void nth_element( RandomIt first, RandomIt nth, RandomIt last ); 3. 사용방법 #include #include #include using namespace std; int main() { int n; cin >> n; vector v(n); for (int i = 0; i > v[i]; // index : 0번째 자리가 확정날 때 까지만 ..
용도 : pair가 그냥 두 자료형을 묶는 거라면, map은 왼쪽의 값을 key값으로 사용하고, 오른쪽의 값은 value값으로 사용한다. key와 value를 가지는 노드를 생성해서 정렬된 '트리형태'로 저장해두어 탐색속도를 높인다.(key를 기준으로 정렬됨) python의 딕셔너리와 비슷하나 딕셔너리는 해시테이블로 구성되고, map은 트리로 구성된다.(레드 블랙 트리가 사용됨) index를 이용해 자료에 접근하는 배열과 달리 key값을 이용해 value에 접근할 수 있다.(key는 unique해야함) 중복된 key를 사용하여 입력하면 덮어씌어짐. 추가, 삽입, 삭제 시 자동정렬된다는 것도 알아두자. 아래 사용할 수 있는 함수를 보면 알겠지만 pair로 map을 구현했다는 것을 알 수 있다. 1. 헤더파..
용도 : 두 개 이상의 타입을 하나로 묶어줌, pair의 확장버전이라고 생각하면됨. 1. 헤더파일 #include 2. 변수 선언 및 값 변경 #include #include using namespace std; int main() { tuple t1 = make_tuple(1,2,3,4); tuple t2 = make_tuple(5,6,7,8); cout
용도 : 두개의 타입을 하나로 묶어줌 1. 헤더파일 #include 2. 변수 선언 - 값을 할당하는 방법은 2가지 방법중 선택가능 pair p1; // 사용 예시 : 문자 빈도수 계산후 저장 용도 p1.first = 10; p1.second = 'c'; pair p2; // 사용 예시 : 문자 빈도수 계산후 저장 용도 p1.first = 10; p1.second = "sample"; pair p3; // 사용예시 : x, y 좌표 같은 것 p3 = make_pair(40, 30); 3. vector타입을 이용한 pair 배열 vector vec; vec.push_back(make_pair(20, 30)); vec.push_back(make_pair(10, 15)); vector vec(2); vec[0..
# min_element(), max_element() - 포인터를 반환하기 때문에 결과값을 보기 위해서는 '*'을 꼭 붙여줘야 한다. #include #include #include using namespace std; int main() { vector vec; vec.push_back(1); vec.push_back(3); vec.push_back(4); vec.push_back(5); vec.push_back(2); cout