51分求助,测试点1、2、5,都是Too long on line 1

P1166 打保龄球

```cpp #include <iostream> #include <cstdio> using namespace std; int main() { string s; getline(cin, s); int v[12][2]={0}; int o[10]; int n=0; for(int x=0, j=0; x < s.size(); x++) { if( s[x] == ' ' ) { n++; j=0; } else { if( s[x] == '/' ) v[n][j] = 10; else v[n][j] = s[x] - '0'; j++; } } int cnt = min(10, n+1); int sum=0; for(int k=0; k < cnt; k++) { int f=0; if( v[k][0] == 10 ) { if( v[k+1][0] == 10 ) { f = 10 + 10 + v[k+2][0]; } else if( v[k+1][1] == 10 ) { f = 10 + 10; } else { f = 10 + v[k+1][0] + v[k+1][1]; } } else if( v[k][1] == 10 ) { f = 10 + v[k+1][0]; } else { f = v[k][0] + v[k][1]; } sum += f; printf("%d", f); if( k != cnt - 1 ) printf(" "); o[k] = sum; } printf("\n"); for(int k=0; k < cnt; k++) { printf("%d", o[k]); if( k != cnt - 1 ) printf(" "); } printf("\n"); } ```
by justkk @ 2021-10-28 11:02:39


知道原因了,没有注意题目中的一个细节:“若某轮的得分暂时无法算出,则该轮得分不显示”
by justkk @ 2021-10-28 15:48:28


|