我提交了十几次都没过,帮看看。。。
#include<cstdio>
using namespace std;
long long T,n,p,q;
inline int read()
{
int x=0;
char ch=getchar();
while(ch<'0' || ch>'9') ch=getchar();
while(ch>='0' && ch<='9')
{
x=(x<<3)+(x<<1)+ch-'0';
ch=getchar();
}
return x;
}
int main()
{
T=read();
while(T--)
{
n=read();
p=read();
q=read();
if(p==0)
{
printf("0\n");
continue;
}
long long ans=0;
if(n%2==1) ans+=p*1;
for(register int j=n%2+1;j<=n;j+=2)
{
if((j+1)*p+j*p>q)
{
ans+=(n-j+1)/2*q;
break;
}
else
ans+=(j+1)*p+j*p;
}
printf("%d\n",ans);
}
return 0;
}
就这样