Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
---|---|---|---|---|---|---|---|---|---|
24105 | baka24 | 【BJ】T2 | C++ | 解答错误 | 30 | 1 MS | 292 KB | 903 | 2023-12-09 11:15:40 |
#include <bits/stdc++.h> using namespace std; #define int long long const int MAXN=5010; int t,n,a[MAXN],as[20]={0,1,2,3,4,5,6,6,5,4,3};char c[MAXN]; bool q01; signed main(){ scanf("%lld",&t); while(t--){q01=1; scanf("%s",c+1); n=strlen(c+1); if(n==1){ printf("%lld\n",as[c[1]-'0']); continue; } if(c[1]=='1'&&c[2]=='0'){ printf("3\n"); continue; } for(int i=1;i<=n;i++){ a[i]=c[i]-'0'; if(c[i]!='0'&&c[i]!='1'){ q01=0; } } if(q01){ int tot=0,ans=0; for(int i=1;i<=n;i++){ if(a[i]^tot){ ans+=n-i+1; tot^=1; } } printf("%lld\n",ans); } } return 0; }