跳到主要内容

P9024 [CCC 2021 S1] Crazy Fencing

· 阅读需 1 分钟
lailai
学生 & 开发者

解题思路

每块木板都是一个直角梯形,用梯形面积公式计算面积:

S=h(a+b)2S=\frac{h(a+b)}{2}

所有 nn 块木板的面积之和即为栅栏的总面积。

参考代码

#include <bits/stdc++.h>
using namespace std;

const int N=10005;
int a[N];
int main()
{
ios::sync_with_stdio(false);
cin.tie(nullptr);
int n;
cin>>n;
for(int i=1;i<=n+1;i++)cin>>a[i];
double ans=0;
for(int i=1;i<=n;i++)
{
int h;
cin>>h;
ans+=(a[i]+a[i+1])*h*0.5;
}
cout<<fixed<<setprecision(1)<<ans<<'\n';
return 0;
}