일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 백준 32028번
- PROJECT
- map
- HTTP
- ucpc 2024 예선 e번
- ucpc 2023 예선 i번
- html5
- Next
- 게임 서버 아키텍처
- 백준 32029번
- JavaScript
- router
- MongoDB
- 지금 자면 꿈을 꾸지만
- Express.js
- branch
- localstorage
- pm2
- ERD
- 백준 28303번
- insomnia
- string
- 더 흔한 색칠 타일 문제
- 자바스크립트
- Prisma
- ucpc 2023 예선 d번
- ccw 알고리즘
- MySQL
- Github
- 그리디
- Today
- Total
목록C++ (5)
dh_0e
stringstream문자열에서 동작하는 스트림 클래스입력 스트림인 istringstream, 출력 스트림인 ostringstream의 기능을 둘 다 포함하고 있음공백이나 '\n' 개행문자를 기준으로 값을 분리해줌string type의 문자열에서 원하는 자료형의 데이터를 추출할 수 있게 해줌 헤더 파일을 선언하고 사용 문자열을 공백, '\n'을 기준으로 분리#include #include #include using namespace std;int main(){ string n; string str = "abc d ef\n gh i1 2 3"; stringstream stream; stream.str(str); // = "stream=str" while(stream >> n..
max_element, min_element배열, 벡터, 리스트 등의 최댓값(max_element), 최솟값(min_element)을 찾을 때 사용 라이브러리에 있으며, 최댓값 or 최솟값을 가리키는 반복자를 반환함시간 복잡도: O(n)#include#include#includeusing namespace std;int main(){ vector vec={1, 2, 3, 4, 5, 6}; printf("vec의 최솟값: %d\n", *min_element(vec.begin(), vec.end())); // 1 printf("vec의 최댓값의 iterator: %p\n", max_element(vec.begin(), vec.end())); // 27762372(주소값) retu..
mapBinary Search Tree로 구현되어 O(log n)의 탐색 시간 복잡도를 가지는 자료구조Red-Black로 구현이 되어있어 문자열 비교에 유리함key 값을 기준으로 오름차순 정렬이 되어있음m.insert({key, value}) == m[key]=valuem.find(key) ==m.end() key 존재 유무 판별m.count(key) 를 사용해도 동일한 시간복잡도 O(logn)만에 key 존재 유무를 판별할 수 있음해당 key가 존재하면 1을 반환 or 없다면 0을 반환unordered_map을 사용하면 O(1)만에 찾을 수 있음iterator 사용법for(auto it = m.begin(); it != m.end(); it++) printf("key: %d, value: %d\n", ..
행렬의 곱셈조건m x n 행렬 A와 i x j 행려 B가 존재할 때, 행렬 A의 열 크기(n)와 행렬 B의 행 크기(i)가 같아야만 행렬의 곱셈이 가능정의두 행렬 A와 B가 있을 때, 이 둘의 곱 C=A⋅B는 다음과 같이 정의됨Cij는 행렬 C의 i번째 행과 j번째 열의 값을 의미하며, 이 값을 구하기 위해 A의 i번째 행과 B의 j번째 열의 각 요소를 곱한 값을 모두 더하면 된다.ex)다음과 같은 2x3 행렬 A와 3x2 행렬 B가 있을 때, 행렬 A의 열 크기(3)와 행렬 B의 행 크기(3)가 같으므로 행렬의 곱이 가능C=A⋅B일 때, C는 2x2 행렬이며 각 요소는 다음과 같이 계산됨 행렬의 곱을 이렇게 정의하는 이유선형변환(Linear Transformation)선형적(직선으로) 변화하는 것선형..
stoi / stol / stoll모두 헤더에 정의되어 있으며, std::stoi, std::stol, std::stoll로 사용됨// stoi 함수int stoi(const std::string& str, std::size_t* pos = 0, int base = 10);int stoi(const std::wstring& str, std::size_t* pos = 0, int base = 10);// stol 함수long stol(const std::string& str, std::size_t* pos = 0, int base = 10);long stol(const std::wstring& str, std::size_t* pos = 0, int base = 10);// stoll 함수long long..