題目連結: https://zerojudge.tw/ShowProblem?problemid=a251

# 解題思路

運用 DP 的方式將每個數字算出來!!
之後,在排序陣列找最中間的那個就行!!

# 程式碼

#include <bits/stdc++.h>
using namespace std;
int main(){
    int n;
    while(cin>>n&&n){
        while(n--){
            int N;  cin>>N;
            int s[N];
            for(int i=0;i<4;i++) cin>>s[i];
            for(int i=4;i<N;i++) s[i]=s[i-1]+s[i-4];
            sort(s,s+N);
            cout<<s[(N-1)/2]<<endl;
        }
    }
    return 0;
}
更新於 閱讀次數

用實際行動犒賞爆肝的我😀

Zrn Ye LinePay

LinePay