반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- k8s
- linux
- Swift
- 컨테이너
- AWS
- 인프라
- 부스트코스
- 도커 이미지
- 도커 컨테이너
- 도커
- devops
- centOS
- 운영체제
- 도커 명령어
- 네트워크
- 프로세스
- 리눅스
- Python
- NGINX
- boj
- 데브옵스
- kubernetes
- swift 클로저
- docker
- ios
- os
- 쿠버네티스
- centOS7
- 클라우드
- C++
Archives
- Today
- Total
귀염둥이의 메모
[C++] std::accumulate 본문
반응형
std::accumualte
#include <iostream>
#include <numeric>
using namespace std;
int main() {
int array[10] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
int sum = accumulate(array, array + 10, 0);
cout << "sum : " << sum << "\n"; // sum : 55
int product = accumulate(array, array + 10, 1, multiplies<int>());
cout << "product : " << product << "\n"; // product : 3628800
long long arrayL[10] = {2e9, 3e9};
long long longSum = accumulate(arrayL, arrayL + 2, 0LL); // longSum : 5000000000
cout << "longSum : " << longSum << "\n";
return 0;
}
<numeric> 헤더에 포함된 함수이고, 보통 배열 또는 벡터 원소들의 합을 구할 때 사용
accumulate의 첫 번째, 두 번째 인자는 각각 first, last iterator가 들어가고, 세 번째 인자는 initial value이다.
int sum을 구하는 경우에는 합의 초기값 0이 들어가고, 곱의 경우에는 1을 넣는다.
주의점!! accumlate의 반환값이 initial value의 타입을 따라간다.
int sum = accumulate(array, array + 10, 0);
int의 경우에는 initail value를 0으로 하지만
long long longSum = accumulate(arrayL, arrayL + 2, 0LL);
long long의 경우에는 0LL로 주어야 한다.
반응형
'CS > C, C++' 카테고리의 다른 글
[C++] sort 이용한 오름차순, 내림차순 정렬, greater<>, less<> (0) | 2021.06.21 |
---|---|
[C++] STL (Standard Template Library) (0) | 2021.02.17 |
[C언어] 포인터(Pointer) (0) | 2021.02.09 |
Comments