C++ min , max, index 구하기
2022. 8. 21. 14:27ㆍSTUDY/C++
반응형
HEADER : #include <algorithm>
일일히 for 문을 쓰지않아도, algorithm 라이브러리에 있는 min/max_elements를 사용하여 한 줄로도 간단하게 최대값을 구할 수 있다!
또한 해당 최소/최대 값의 index 값을 구할 수 있다. 이는 결과값에서 - v.begin()을 빼주면 된다.
min/max_element의 결과로, 최대값을 가리키는 반복자를 반환하기 때문에 * 연산자를 사용한다.
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
|
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
vector<int> nums;
int main()
{
nums = {123,213,444,455,666,777,888,1000};
cout << "current vector : ";
for(int i : nums) cout << i << ' ';
cout << '\n' << '\n';
int min = *min_element(nums.begin(), nums.end());
cout << "min val : " << min << '\n';
int min_idx = min_element(nums.begin(), nums.end()) - nums.begin();
cout << "min idx : " << min_idx << '\n' << '\n';
int max = *max_element(nums.begin(), nums.end());
cout << "max val : " << max << '\n';
int max_idx = max_element(nums.begin(), nums.end()) - nums.begin();
cout << "max idx : " << max_idx << '\n';
}
|
cs |
# 결과
728x90
반응형
'STUDY > C++' 카테고리의 다른 글
C++ - Stringstream (10) | 2022.08.23 |
---|---|
unordered_map vs map in C++ (2) | 2022.08.22 |
C++ - 2차배열 / 동적할당 패턴 연습 (+입력 정리, vector 인자로 넘길때) (0) | 2022.08.19 |
(C++) vector - accumulate, clear/erase, unique(+sort) (0) | 2022.08.18 |
C++ - vector of pairs / vector of vectors (1) | 2022.08.09 |