【C++题解】112352.面积
题目描述有n根铁柱依次笔直的摆放在1到n的坐标轴的位置上第i根铁柱的长度为a[i],铁柱和坐标轴会围成一个不规则的多边形例如有3根铁柱长度依次为3,1,2,那么会和坐标轴形成如下图的多边形形成多边形的面积为(31)*1/2(12)*1/23.5现在你可以进行任意次交换操作每次操作可以交换相邻的铁柱求形成多边形的最大面积s为多少输入格式第一行一个整数n表示有n根铁柱接下来输入一行包含n个正整数a[1],a[2],...,a[n],分别表示n根铁柱的长度。输出格式输出最大围成的面积s,结果四舍五入保留两位小数30%的数据保证:1n20100%的数据保证1n2e6,1a[i]2e6输入/输出例子1输入33 1 2输出4.50输入/输出例子2输入25 5输出5.00输入/输出例子3输入13输出0.00参考答案#includebits/stdc.h using namespace std; int main(){ ios::sync_with_stdio(false); cin.tie(nullptr); int n; cin n; if (n 1) { cout fixed setprecision(2) 0.00 endl; return 0; } vectorlong long a(n); for (int i 0; i n; i) { cin a[i]; } sort(a.begin(), a.end()); double result; if (n 2) { result (a[0] a[1]) / 2.0; } else { long long middle_sum 0; for (int i 2; i n; i) { middle_sum a[i]; } result (a[0] a[1] 2.0 * middle_sum) / 2.0; } cout fixed setprecision(2) result endl; return 0; }题目链接https://v1.51goc.com/question/viewProgram/112352进去后要登录

相关新闻