Vector
- vector 최대값, 최소값 구하기
#include <algorithm>
- 최대값 :
*max_element(v.begin(), v.end())
- 최대값의 인덱스 :
max_element(v.begin(), v.end())
- 최소값 :
*min_element(v.begin(), v.end())
- 최소값의 인덱스 :
min_element(v.begin(), v.end())
- 2차원 벡터 :
vector<vector<int>>
- 접근 방법 :
vec[i].first
vec[i].second
...
- 벡터의 멤버함수
v.front()
: v의 첫번째 원소
v.back()
: v의 마지막 원소
v.begin()
: v의 첫번째 원소를 가리키는 iterator
v.end()
: v의 마지막 원소를 가리키는 iterator
v.size()
: v의 원소 개수. len(v) 아님
- boolean 초기화
vector<bool> check(n, true)
- n의 길이만큼 true 로 초기화
- 원소 삭제
start.erase(start.begin()+i)
- vector 중복 원소 제거
sort
: 정렬을 함
unique
: 연속된 중복 원소를 vector.end() 로 보냄
erase
: 중복된 원소들이 모여있는 뒷부분을 삭제함
sort(v.begin(), v.end());
v.erase(unique(v.begin(), v.end()), v.end());
수학 연산
- 순열
std::next_permutation(begin, end)
- 사전 순으로 다음 순열을 구하는 함수
- 다음 순열이 없으면 false, 있으면 true 반환
- 거듭제곱
pow(a, b)
: 실수형이라 값을 정확하게 출력하지 못함
- 에라토스테네스의 체 : 소수 구하기
- 유클리드 호제법 : 나눗셈으로 최대 공약수 구하기