题意:比较难理解,第一个数是数列的长度,第二个数字是指数,第三行是数列,即真数。从数列中选择任意多个,使得他们每个求幂再求和最大。
#include<iostream>
#include<cmath>
using namespace std;
int main()
{
int n,m,i,a[100];
double b[100],sum=0;
cin>>n>>m;
for(i=0;i<n;i++)
{
cin>>a[i];
b[i]=pow(a[i]*1.0,m);
}
for(i=0;i<n;i++)
if(b[i]>0) sum+=b[i];
cout<<sum<<endl;
return 0 ;
}