璟雯院

珺璟如晔,雯华若锦

用户工具

站点工具


icpc:problems:luogup1308
problems
名称统计单词数
题目编号2011 NOIP PJ T2
题目链接luogu.com.cn/…
来源CCF
算法分类入门_字符串
难易程度容易

统计单词数

想法

fgets可能存在吞空格的行为,scanf也有可能存在吞空格的行为。需要统计输入行的方法。

代码实现

#include<cstdio>
#include<iostream>
#include<cstring>
using namespace std;
 
const int N = 1e6+10;
char str[15];
char line[N];
 
int main() {
	cin.getline(str, sizeof(str));
	cin.getline(line, sizeof(line));
	int cnt = 0, sit = -1, slen = strlen(str), len = strlen(line);
	for(int i=0; i<slen; i++)
		if(str[i] >= 'A' && str[i] <= 'Z')
			str[i] = str[i] - 'A' + 'a';
	for(int i=0; i<len; i++)
		if(line[i] >= 'A' && line[i] <= 'Z')
			line[i] = line[i] - 'A' + 'a';
	for(int i=0; i<len; i++) {
		if((i == 0 || line[i-1] == ' ') && line[i] == str[0]) {
			bool flag = true;
			for(int j=0; j<slen; j++) 
				if(line[i+j] != str[j]){
					flag = false;
					break;
				}
			if(!flag)continue;
			if(flag && !(line[i+slen] >= 'a' && line[i+slen] <= 'z')){
				cnt++;
				if(sit == -1)
					sit = i;
			}
		}
	}
	if(cnt == 0) 
		printf("-1");
	else
		printf("%d %d", cnt, sit);
	return 0;
}
/app/www/public/data/pages/icpc/problems/luogup1308.txt · 最后更改: 2024/03/13 16:19 由 温婕莺