#include
#include
int main()
{
__int64 a,b,n,m,c[1000],x,h,i,j,g;
double sum;
scanf("%I64d",&a);
for(i=1;i<=a;i++)
{
scanf("%I64d%I64d",&n,&m);
for(j=1;j<=m;j++)
{
scanf("%I64d",&c[j]);
}
h=0;
x=0;
sum=0;
if(n==0) h=1; // 加上这行
for(j=1;j<=m;j++)
{
if(h==0)
{
if(j==n)
h=1;
if(c[j]==1)
h=1;
}
else
{
x++;
}
}
sum=pow(2,x)-1;
printf("%0.lf RMB\n",sum*10000);
}
return 0;
}
#include
#include
using namespace std;
void Calu(int &nTotalMoney,vector
{
int nCurMoney = 1;
while(nStart < oChild.size())
{
nTotalMoney += nCurMoney;
nCurMoney += nCurMoney;
nStart ++;
}
}
void Merge(int &nTotalMoney,vector
{
int i = 0;
while(i < oChild.size() && oChild[i ++] == 0){}
if(i < M)
{
Calu(nTotalMoney,oChild,i);
}
else
{
Calu(nTotalMoney,oChild,M);
}
}
int main()
{
int T,M,N;
cin>>T;
vector
while(T --)
{
oChild.clear();
cin>>M>>N;
for(int i = 0; i < N; i ++)
{
int nTemp;
cin>>nTemp;
oChild.push_back(nTemp);
}
int nTotalMoney = 0;
Merge(nTotalMoney,oChild,M);
if(nTotalMoney == 0)
{
cout<<"0 RMB"<
else
{
cout<
}
return 0;
}
参照我的代码看看?
当输入 0 3的时候……
哦