PS를 할 때 나는 거의 대부분 C++를 쓴다. (C++11)
왜냐하면 C++에 정말 엄청난 툴인 STL이 있기 때문이다.
그중 나에게 최애는 단연 vector이다.
vector는 작고 간편하지만, 정말 많은 상황들에서 강력한 힘을 발휘한다.
난 대부분의 상황들을 거의 vector로 처리한다.
C++의 vector는 본래 std::vector이지만, PS할 때는 편의상 그냥 vector로 표기 한다.
벡터는 만드는 것도 참 간단하다.
vector<int> v;
생성자로 만드려면
vector<int> v(10); // size == 10, all elements will be 0
1. 정렬 (O(nlogn))
sort(v.begin(), v.end()); // asc sort(v.begin(), v.end(), greater<int>()); // desc
2. 탐색 (O(n))
for(auto &x: v) { if (x == target) { cout << "found !"; break; } }
3. 최대/최소값 뱉어내기 (O(n))
int mx = *max_element(v.begin(), v.end()); int mn = *min_element(v.begin(), v.end());
'Programming > PS' 카테고리의 다른 글
PS를 위한 C++ - string (0) | 2019.06.26 |
---|---|
python으로 PS할 때 입력 받기 (0) | 2019.06.26 |