您的位置:首页 > 其它

【hihocoder 1258 Osu! Master】

2016-05-06 13:08 232 查看
2015北京区域赛现场赛签到题。

题面:http://media.hihocoder.com/contests/icpcbeijing2015/problems.pdf

OJ链接:http://hihocoder.com/problemset/problem/1258?sid=788340

题意:T组数据,每组为一个长度为n序列,每个元素为下面三种格式之一:

  C x

  B x

  S

其中x为一个正整数,x值从1连续增长到k的一组[C|B]序列视为一个pattern,单独的一个S视为一个pattern。统计序列中pattern的总数

数据范围:T [1, 100], n [0, 10^4]

WA在了把每个行存成一个字符串,只判断数字第一位是否为'1'。这样没有考虑多于1位数的情况,如12。

#include <cstdio>
using namespace std;

int n;

int main(){
freopen("1258.txt", "r", stdin);
while(scanf("%d", &n)!=EOF){
//printf("n: %d\n", n);
int cnt = 0;
getchar(); //吸收第一个n后的回车
for(int i=0; i<n; i++){
char s[10];
gets(s);//gets()以当前字符开始,以回车结束
//printf("%s\n", s);
switch(s[0]){
case 'S': cnt++; break;
default:
if(s[2]=='1' && s[3]=='\0'){//WA在这里,注意多位数的情况,如12
cnt++;
break;
}
}
}
printf("%d\n", cnt);
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: