3472:【例85.3】 过河问题
[例85.3] 过河问题
【信息学奥赛一本通-编程启蒙】3472【例85.3】 过河问题
数学模型 商人过河问题 C++实现
第22集 | 【信息学奥赛一本通-编程启蒙】3472【例85.3】 过河问题
#include <bits/stdc++.h>
using namespace std;
int n,t,a[1010],ans=0;
int main()
{
cin>>t;
while(t--){
ans=0;
cin>>n;
for(int i=1;i<=n;i++) cin>>a[i];
sort(a+1,a+1+n);
while(n>3){
int sum1=a[1]*2+a[n]+a[n-1];
int sum2=a[2]*2+a[1]+a[n];
ans+=min(sum1,sum2);
n-=2;
}
if(n==1)ans+=a[1];
else if(n==2) ans+=a[2];
else ans+=a[1]+a[2]+a[3];
cout<<ans<<endl;
}
return 0;
}
《信息学奥赛一本通 编程启蒙C++版》3366-3370(5题)
37、《信息学奥赛一本通 编程启蒙 C++版》 3361-3370(10题)
37、《信息学奥赛一本通 编程启蒙 C++版》 3361-3370(10题)_3364:练62.3 学习效率-CSDN博客
《信息学奥赛一本通 编程启蒙C++版》3371-3375(5题)
38、《信息学奥赛一本通 编程启蒙 C++版》 3371-3380(10题)
38、《信息学奥赛一本通 编程启蒙 C++版》 3371-3380(10题)_3373:练64.2 图像旋转翻转变换-CSDN博客