PAT乙级1033 旧键盘打字

来源:互联网 发布:阿里云服务器转让 编辑:程序博客网 时间:2024/05/12 02:09

这里用cin有一个点过不了,改用getline就没问题了。原因似乎是坏掉的键数有可能为0。

#include <iostream>#include <string>#include <set> using namespace std;int main(){    string str1,str2,str3;    int flag[100000]={0},count=0;    getline(cin,str1);    getline(cin,str2);    set<char> str1Set;    for(int i=0;i<str1.length();i++){        if(str1[i]>='A'&&str1[i]<='Z'){            str1Set.insert(str1[i]+32);        }        str1Set.insert(str1[i]);    }    for(int i=0;i<str2.length();i++){        if(str1Set.count(str2[i])!=0){            flag[i]=1;        }        if(str1Set.count('+')!=0){            if(str2[i]>='A'&&str2[i]<='Z'){                flag[i]=1;            }        }    }    for(int i=0;i<str2.length();i++){        if(flag[i]==1){            continue;        }else{            cout<<str2[i];            count++;        }    }    return 0;}
原创粉丝点击