1012. 我是第几个单词(加强版、中间可多空格)

发布时间:2026/6/29 23:25:48
1012. 我是第几个单词(加强版、中间可多空格) 问题描述给定一个英文句子以.作为结束标志句子中只包含由若干大小写字母组成的单词单词之间用一个空格分隔不包含其他字符。再给定一个单词A请在句子中查找如果单词A首次出现在句子中输出它是句子中的第几个单词从 1 开始计数如果单词A不存在于句子中则输出句子中所有单词字符的总个数不包括空格和句号。输入格式第一行一个英文句子以.结束只包含大小写字母和空格单词之间恰好一个空格句子长度 ≤ 800单个单词长度 ≤ 90第二行一个单词不含空格长度 ≤ 90输出格式输出一个整数表示结果。样例样例 1输入This is a Book. Book输出4样例 2输入This is a Book. isa输出11#includebits/stdc.husingnamespacestd;typedeflonglongll;// 严格要求 (将long long 类型取别名为ll)string a[100010];ll len0;voidfunc(string s){s s ;ll l0,r0,ds.size()-1;//下标变化for(ll i1;id-1;i){if(s[i-1] s[i]! ){li;}if((s[i1] ||s[i1].)(s[i]! s[i]!.)){ri;string s2;for(ll jl;jr;j){s2s[j];}a[len]s2;}}}intmain(){ios::sync_with_stdio(0);// 提高cin、cout的运行速度cin.tie(0);cout.tie(0);ll sum0;string s,s1;getline(cin,s);cins1;func(s);for(ll i1;ilen;i){if(a[i]s1){coutiendl;return0;}suma[i].size();}coutsumendl;return0;}