跳到主要内容

题解:P9024 [CCC2021 S1] Crazy Fencing

· 阅读需 1 分钟
lailai
Blogger

原题链接

解题思路

  1. 每块木板都是一个直角梯形,用梯形的面积公式求出面积:
S=h(a+b)2S=\dfrac{h(a+b)}{2}

  1. 所有 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;
}