做题的时候千万不要因为为了过样例把某个数特判了。。。
一定要按着正确的思路去做题QAQ
还有就是,做题的时候面多0相关的位置一定要慎重慎重。。
#include<stdio.h>
#include<string.h>
int a[1005],b[1005],c[1005];
int cout=0,lss;
long long shanghai;
void zhixing(int lss,int cout)
{
int wei=cout+lss-1;
if(cout==0) cout=1;
//printf("%d %d %d\n",lss,wei,cout);
while(wei>=cout){
if(b[wei]==3) return;
if(b[wei]==2) {shanghai+=(wei-cout+1)*c[wei];}
if(b[wei]==1) {shanghai+=c[wei];}
if(b[wei]==4) wei--;
wei--;
}
}
int main()
{
int n;
while(scanf("%d",&n)!=EOF)
{
cout=n;shanghai=0;
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(c,0,sizeof(c));
for(int i=1;i<=n;i++)
{
scanf("%d%d",&a[i],&b[i]);
if(b[i]==1||b[i]==2) scanf("%d",&c[i]);
}
while(cout>0)
{
lss=1;
while(a[cout]>=a[cout-1]&&cout>0) {lss++;cout--;}
//if(cout==0) cout=1;
zhixing(lss,cout);//现在指的是连锁的第一个位置
cout--;//变成了下一组
}
printf("%lld\n",shanghai);}
return 0;
}