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。
1 #include <cstdio> 2 using namespace std; 3 4 int n; 5 6 int main(){ 7 freopen("1258.txt", "r", stdin); 8 while(scanf("%d", &n)!=EOF){ 9 //printf("n: %d\n", n); 10 int cnt = 0; 11 getchar(); //吸收第一个n后的回车 12 for(int i=0; i<n; i++){ 13 char s[10]; 14 gets(s);//gets()以当前字符开始,以回车结束 15 //printf("%s\n", s); 16 switch(s[0]){ 17 case 'S': cnt++; break; 18 default: 19 if(s[2]=='1' && s[3]=='\0'){//WA在这里,注意多位数的情况,如12 20 cnt++; 21 break; 22 } 23 } 24 } 25 printf("%d\n", cnt); 26 } 27 return 0; 28 }
时间: 2024-09-30 14:28:26