CCF- CSP 202112-1序列查询 数学推理满分题解
题目链接:202112-1序列查询
思路:
- 在第二行输入整数后,我们根据整数之间的间隔,直接计算
- 巧妙利用数组下标的关系,即可得到数学表达式
sum+=(a[i]-a[i-1])*(i-1);
- 最后注意N与a[n]之间的大小关系,不要忘记
sum+=(N-a[n])*n
具体代码如下:
#include <iostream>
#include <algorithm>
using namespace std;
const int M = 210;
int n,N;//输入
int a[M];//存储数据
int sum;//用于输出
int main()
{
cin>>n>>N;
for(int i=1;i<=n;i++)
{
cin>>a[i];
}
for(int i=2;i<=n;i++)
{
sum+=(a[i]-a[i-1])*(i-1);//计算公式
}
sum+=(N-a[n])*n;//不要忘记加上最后的数
cout<<sum<<endl;
return 0;
}
具体题目: