c++递归计算数组求和(减而治之)(二分查找)

实现一个函数,递归计算数组求和(减而治之)
实现一个函数,递归计算数组求和(二分递归)

#include<iostream>
using namespace std;
int s(int a[],int n){
    if(n==1){
        return a[0];
    }
    return a[n-1]+s(a,n-1);
}
int main() {
    int a[10];
    for(int i=0;i<10;i++){
        cin>>a[i];
    }
    cout<<s(a,10);
    return 0;
}
#include<iostream>
using namespace std;
int s(int a[],int l,int h) {
    if(l == h) return a[l];                //出口判断
    int mid = (l+h)>>1;
    return s(a,l,mid)+s(a,mid+1,h);
}
int main() {
    int a[10];
    for(int i=0; i<10; i++) {
        cin>>a[i];
    }
    cout<<s(a,0,9);
    return 0;
}