1. 程式人生 > >What Are You Talking About HDU1075

What Are You Talking About HDU1075

字符 isp clu ace view 分享圖片 img getch col

一開始我也想用map 但是處理不好其他字符。。

看了題解 多多學習! 很巧妙 就是粗暴的一個字符一個字符的來 分為小寫字母和非小寫字母兩個部分 一但單詞結束的時候就開始判斷。

技術分享圖片
#include<bits/stdc++.h>
using namespace std;

int main()
{
    string a,b;
    map<string ,string >ma;
    cin>>a;
    while(cin>>a&&a!="END")
    {
        cin>>b;ma[b]=a;

    }
    cin
>>a; char s[3500];getchar(); while(gets(s)) { if(!strcmp(s,"END"))break; int n=strlen(s); a=""; for(int i=0;i<n;i++) { if(islower(s[i]))a+=s[i]; else { if(ma.find(a)!=ma.end()) cout<<ma[a];
else cout<<a; cout<<s[i]; a=""; } } cout<<endl; } }
View Code

What Are You Talking About HDU1075