7-18 QQ帐户的申请与登陆 (10 分)

简介: 7-18 QQ帐户的申请与登陆 (10 分)

7-18 QQ帐户的申请与登陆 (10 分)


实现QQ新帐户申请和老帐户登陆的简化版功能。最大挑战是:据说现在的QQ号码已经有10位数了。


输入格式:


输入首先给出一个正整数N(≤105),随后给出N行指令。每行指令的格式为:“命令符(空格)QQ号码(空格)密码”。其中命令符为“N”(代表New)时表示要新申请一个QQ号,后面是新帐户的号码和密码;命令符为“L”(代表Login)时表示是老帐户登陆,后面是登陆信息。QQ号码为一个不超过10位、但大于1000(据说QQ老总的号码是1001)的整数。密码为不小于6位、不超过16位、且不包含空格的字符串。


输出格式:


针对每条指令,给出相应的信息:


1)若新申请帐户成功,则输出“New: OK”;

2)若新申请的号码已经存在,则输出“ERROR: Exist”;

3)若老帐户登陆成功,则输出“Login: OK”;

4)若老帐户QQ号码不存在,则输出“ERROR: Not Exist”;

5)若老帐户密码错误,则输出“ERROR: Wrong PW”。



输入样例:


1. 5
2. L 1234567890 myQQ@qq.com
3. N 1234567890 myQQ@qq.com
4. N 1234567890 myQQ@qq.com
5. L 1234567890 myQQ@qq
6. L 1234567890 myQQ@qq.com


结尾无空行


输出样例:


1. ERROR: Not Exist
2. New: OK
3. ERROR: Exist
4. ERROR: Wrong PW
5. Login: OK


结尾无空行


#include<iostream>
#include<map>
using namespace std;
map<string,string>mp;
int n;
char c;
string a,b;
int main(){
    cin>>n,getchar();
    for(int i=0;i<n;i++){
        cin>>c>>a>>b;
        if(c=='N'){
            if(mp.count(a)==1)cout<<"ERROR: Exist\n";
            else mp[a]=b,cout<<"New: OK\n";
        }else{
                if(mp.count(a)==0)cout<<"ERROR: Exist\n";
                else if(mp[a]!=b)cout<<"ERROR: Wrong PW\n";
                else cout<<"Login: OK\n";
        }
    }
    return 0;
}



目录
相关文章
|
数据安全/隐私保护
基础实验5-2.3:QQ帐户的申请与登陆(map的各种用法)
基础实验5-2.3:QQ帐户的申请与登陆(map的各种用法)
103 0
|
6月前
|
前端开发 NoSQL 数据库
设计 QQ、微信等第三方账号登陆
设计 QQ、微信等第三方账号登陆
64 0
设计 QQ、微信等第三方账号登陆
|
6月前
|
安全 Linux 网络安全
购了轻服务器,手机登录服务器用root和administrator做登录名,都提示别名已存在,请修改
【2月更文挑战第16天】购了轻服务器,手机登录服务器用root和administrator做登录名,都提示别名已存在,请修改
49 1
|
前端开发 数据安全/隐私保护
|
算法 数据安全/隐私保护 C++
|
API 数据安全/隐私保护
QQ登陆功能的实现2
QQ登陆功能的实现2     由于看到园子里有朋友说需要讲解和剖析实现的步骤,前面的QQ登陆实现只有代码,所以这篇补上    1.  分析 1). 当运行QQ.exe后会出现qq登陆界面的窗体 2).
1054 0
|
数据安全/隐私保护