Problem A: 【简单计算】
Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 8 Solved: 3
[ Submit][ Status][ Web Board]
Description
有一个n+2个元素a[0], a[1], ..., a[n+1] (n <= 3000, -1000 <= a[i] <=1000)构成的数列.
已知对i=1, 2, ..., n有a[i] = (a[i-1] + a[i+1])/2 - c[i].
给定a0, a[n+1], c[1], ... , c[n]. 写一个程序计算a[1].
Input
第一行是整数n. 接下来两行是a[0]和a[n+1], 其小数点后有两位数字. 其后的n行为c[i](同样是两位小数), 每行一个数.
Output
输出为a[1], 格式与a[0], a[n+1]相同.
Sample Input
1
50.50
25.50
10.15
Sample Output
27.85
HINT
额额,数学题!
#include<stdio.h>
#include<string.h>
int main()
{
int n, i;
double first, final, sum, temp, ans;
while(scanf("%d", &n)!=EOF)
{
scanf("%lf", &first);
scanf("%lf", &final);
for(i=1,sum=0; i<=n; ++i)
{
scanf("%lf", &temp);
sum += 2.0*(n+1-i)*temp;
}
ans = n*first+final-sum;
printf("%.2lf\n", ans/(n+1));
}
return 0;
}