此题我认为关键的一点是把津津此月还剩的从下个月的开销里减去,就方便很多了。
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<cmath>
#include<map>
#include<queue>
#include<algorithm>
using namespace std;
int a[15];
int x,b;
void init()
{
freopen("jinjin.in","r",stdin);
freopen("jinjin.out","w",stdout);
}
void readdata()
{
for(int i=1;i<=12;i++)
scanf("%d",&a[i]);
}
void work()
{ int s=0;
if(a[1]>300)
{
printf("-%d",1);
exit(0);
}
for(int i=1;i<=12;i++)
{
b=0;
x=0;
if(a[i]<=300)
{
x=((300-a[i])/100)*100;
s+=x;
b=300-a[i]-x;
a[i+1]=a[i+1]-b;
if(a[i+1]>300)
{
printf("-%d",i+1);
exit(0);
}
}
}
printf("%.0lf",(double)(s*1.2+b));
}
int main()
{
//init();
readdata();
work();
return 0;
}