解题思路

这个题啊,还真的有点坑,先说说测试点2和6,测试点2卡的是最后一行输入是#号,这时候用户实际尝试了n-1次,不需要输出

Account locked

,测试点6是输入的尝试密码包含空格,思路其实很简单,看看下面代码就懂了

通过代码

#include<bits/stdc++.h>
using namespace std;
int main(){
    ios::sync_with_stdio(false);
    string s,t;
    int n,c,e;    //c保存尝试的次数,e保存总共允许的次数
    bool open=false;
    cin>>s>>n;
    cin.get();
    c=0;    e=n;
    while(n--){
        getline(cin,t);
        if(t.length()==1&&t[0]=='#') break;
        if(t==s){
            cout<<"Welcome in";
            open=true;
            break;
        } else{
            cout<<"Wrong password: "<<t;
            c++;
        }
        cout<<endl;
    }
    if(!open&&e==c) cout<<"Account locked"<<endl; //没解锁并且尝试了n次提示已经锁定
    return 0;
}