codeforces 883 F. Lost in Transliteration

来源:互联网 发布:twemproxy 源码解析 编辑:程序博客网 时间:2024/06/02 00:13

这是一个大水题,为什么要写他呢,因为我用错了一个string的方法,写下来提醒下自己。

string 如果定义了s=“”;那么s就是等于空了,如果想加入值 s+=“1”,如果直接写s[0]=‘1’;就等于没写

#include<bits/stdc++.h>using namespace std;map<string ,int>mp;int main(){int n,ans=0;cin>>n;string s,s1,s2;while(n--){    cin>>s;    s1="";    for(int i=0;i<s.length();i++)    {        if(s[i]=='u'){s1+="oo";continue;}        if(s[i]=='h'){                int len=s1.length();                len--;                while(s1[len]=='k')                    len--;                     s2="";                     //cout<<s1[len]<<" 12311"<<endl;                    for(int j=0;j<=len;j++)                        s2+=s1[j];//开始s2[j]=s1[j]错了                    s2+='h';                    s1=s2;        continue;}        s1+=s[i];    }   // cout<<s1<<endl;    if(mp[s1]==0)ans++,mp[s1]++;}cout<<ans<<endl;    return 0;}


原创粉丝点击