#UVa:1585-Score

按照題目要求去處理字串去將每個連續的O的分數累加起來即可得解。

P.S. 這題我用一般會用的while(scanf() != EOF)以及getline()會得到WA,不知道測資還塞了些什麼東西…..

C++(0.000)

/*******************************************************/
/* UVa 1585 Score                                      */
/* Author: LanyiKnight [at] knightzone.org             */
/* Version: 2015/07/22                                 */
/*******************************************************/
#include <iostream>
#include <string>
#include <cstdio>
using namespace std;

int main(){
  int T;
  scanf("%d", &T);
  for( int caseCount = 0 ; caseCount < T ; ++caseCount ){
    string input;
    cin >> input;

    int score = 0, add = 1;
    for( int i = 0 ; i < input.length() ; ++i ){
      if( input[i] == 'O' ){
        score += add;
        ++add;
      }
      else {
        add = 1;
      }
    }

    printf("%d\n", score);
  }
  return 0;
}

沒有迴響

本文還沒有迴響,快來搶頭香!

發表迴響