![](https://cdn.luogu.com.cn/upload/image_hosting/hens0bzr.png?x-oss-process=image/resize,m_lfit,h_170,w_225)
为啥我的输入题目样例,按换行后卡着不动了?死循环?还是别的原因?(我是蓝名!不是神犇!)
by Rieman_sum @ 2023-02-13 19:40:43
@[Guo1](/user/743879) 你是不是应该先把 freopen 这行去掉。
by Infinite_Eternity @ 2023-02-13 19:42:11
第$20$行注释掉了,还要注释别的吗(难道文件操作不是无法输入吗)?
by Rieman_sum @ 2023-02-13 19:43:42
@[_DANCER_](/user/925190) 如果第二行开头有空格呢?如果单词之间有两个空格呢?
by ud2_ @ 2023-02-13 19:51:51
@[ud2_](/user/206953) 噢, 多空格的情况我确实没有考虑到, 谢谢谢谢orz
by _DANCER_ @ 2023-02-13 20:33:33
后来改了, 已经过了, 谢谢orz...
```cpp
#include<iostream>
#include<string>
using namespace std;
string change(string s)
{
int len=s.length();
string o="";
for(int i=0;i<len;i++)
{
if(s[i]>='A'&&s[i]<='Z')
o+=s[i]-'A'+'a';
else o+=s[i];
}
return o;
}
int main()
{
//freopen("D:\\System_folders\\Desktop\\C++(g++)\\packet\\P1308.in","r",stdin);
string check,s="";
cin>>check;
check=change(check);
int first=0,ans=0;
bool flag=0,p1=1;
char c;
while((c=getchar())!=EOF)
{
if(c!=' '&&!isalpha(c))
continue;
if(!flag) first++;
if(c==' ')
{
if(change(s)==check)
{
if(!flag)
{
flag=1;
first-=s.length()+1;
}
ans++;
}
s="";
}
else if(isalpha(c))
s+=c;
}
if(s!=""&&change(s)==check)
{
if(!flag)
{
flag=1;
first-=s.length();
}
ans++;
}
if(ans==0) cout<<-1;
else cout<<ans<<" "<<first;
return 0;
}
```
by _DANCER_ @ 2023-02-14 10:54:57