![](https://img-blog.csdnimg.cn/img_convert/ff78f72beadb3073a577f130820f497b.png)
发现规律 输入元素和*2^(n-1)
最终集合和为:ans*pow(2,n-1);
![](https://img-blog.csdnimg.cn/img_convert/5f6c55760e1dda654253c125c6e0fa8b.png)
让直接输入(无确定个数的输入)停止:输入完,直接打ctrl+z即可推出
![](https://img-blog.csdnimg.cn/img_convert/4b0a46ff862a38ca5b90da8d28f12dd0.png)
ACcode:
#include<iostream>
#include<cmath>
using namespace std;
long long ans;//结果
int a,k;//滚动数组,一共输入了多少个数
int main()
{
while (cin >> a)//输入完自己想要的数完,打ctrl+z即可结束输入
{
ans += a;//加
k++;//确定一共输入了多少个数
}
ans=(long long)ans*pow(2,k-1);//根据公式
cout << ans<<endl;//输入
return 0;//好习惯
}
over~