包含不合法数据也就算了。。题意不清楚也就算了。。篮球还有平局也算是很屌了。。。
#include <iostream> #include <cstring> #include <cstdio> #include <cmath> #include <algorithm> #include <queue> using namespace std; int a[1100000]; int n; long long sum; int main() { int t; int k=1; int flag; scanf("%d",&t); while(t--) { flag=0; sum=0; scanf("%d",&n); for(int i=0;i<n;i++) { scanf("%d",&a[i]); } if(a[0]<=0||a[0]>3) { flag=1; } for(int i=1;i<n;i++) { if(a[i-1]==1&&a[i]==1) { } if(a[i-1]==2&&a[i]==1) { sum++; } if(a[i-1]==1&&a[i]==2) { sum++; } if(a[i]<0||abs(a[i]-a[i-1])>3||(a[i]==a[i-1]&&a[i]!=1)) { flag=1; } if(flag==1) { break; } } if(flag==1) { printf("Case #%d: 0\n",k++); } else { if(a[n-1]==0) { sum=sum+1; } else { sum=(sum+1)*2; } printf("Case #%d: %I64d\n",k++,sum); } } return 0; }
原文地址:http://blog.csdn.net/q295657451/article/details/38736083