第5题 可表示的数 时限:1s 空间:256m
有N个整数从左到右排成一行,如果某个数等于它前面的2个数的和,就称这个数是可以表示的数。问给定的数列里有多少个数是可以表示的数。
输入格式
输入文件名:637.in
第一行1个整数N,表示数列有多少个整数。1<=N<=10000。
第二行N个正整数,每个正整数不超过10000。
输出格式
输出文件名:637.out
一个整数,有多少可表示的数。
输入/输出例子1
输入:
8
5 2 2 3 4 8 7 16
输出:
3
样例解释
4=2+2;8=5+3; 7=3+4
样例解释
无
样例解释
无
作答区域
#include<iostream>
using namespace std;
int n,ans;
int a[10005],v[20005];
int main()
{
cin >> n;
for(int i=0;i<n;i++)
{
cin>>a[i];
if(v[a[i]]==1) ans++;
for(int j=0;j<i;j++)
{
v[a[i]+a[j]] = 1;
}
}
cout<<ans<<endl;
return 0;
}