題目連結: 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; | |
} |