https://developer-dreamer.tistory.com/36
python 버전
---
이번 포스트는 c++ 버전으로 다시 풀겠습니다
여기에서 습득한 것
python의 sum(배열)처럼, c++에도 배열 원소 합을 구할 수 있음
https://stackoverflow.com/questions/26941943/how-to-add-all-numbers-in-an-array-in-c
#include <iostream>
#include <vector>
#include <numeric>
#include <functional>
int main() {
std::vector<int> numbers = {1, 2, 3, 4, 5};
int sum = std::accumulate(numbers.begin(), numbers.end(), 0, std::plus<int>());
std::cout << "Sum: " << sum << std::endl; // 출력: Sum: 15
return 0;
}
accumulate(합산 시작점, 합산 종료점, 누적합산을 시작할 초기 값, 두 int를 더하는 functional 헤더에서 제공하는 함수)
그거 외에는 단순히 python 코드를 c++로 옮기는 작업을 진행했다
python와 의외로 비슷하게 사용할 수 있어서 다행이다
#include <string>
#include <vector>
#include <numeric>
using namespace std;
int DFS(vector<int> numbers, int target, int depth){
int answer=0;
if (depth==numbers.size()){
if (accumulate(numbers.begin(), numbers.end(),0,plus<int>())==target){
return 1;
} else {
return 0;
}
} else {
answer += DFS(numbers, target, depth+1);
numbers[depth]*=-1;
answer+=DFS(numbers, target,depth+1);
return answer;
}
}
int solution(vector<int> numbers, int target) {
int answer = 0;
answer = DFS(numbers,target,0);
return answer;
}
'개발자 강화 > 코딩 테스트' 카테고리의 다른 글
[백준] 5014_스타트링크_BFS (c++) 실1 (1) | 2024.11.09 |
---|---|
[백준] 2644 - 촌수계산 (C++) lv.2 (2) | 2024.11.09 |
[SQL] 즐겨찾기가 가장 많은 식당 정보 출력하기 - GROUP BY - 프로그래머스 (0) | 2024.11.09 |
[SQL] GROUP BY - 자동차 대여 기록에서 대여중/대여 가능 여부 구분하기 - 프로그래머스 (1) | 2024.11.09 |
[SQL] 프로그래머스 SUM,MAX,MIN - MySQL (3) | 2024.11.09 |