栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

zoj 1174 Skip Letter Code

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

zoj 1174 Skip Letter Code

#include <set>#include <map>#include <string>#include <cctype>#include <cstdio>using namespace std;int main(void){    int re;    scanf("%d", &re);    for (int ri = 1; ri <= re; ++ri) {        set <string> st;        map <string, string> mp;        int n;        char ch, str[10], buf[10];        scanf("%d ", &n);        while(n--) { gets(str); string tmp(str); int l = tmp.length(); int ll = 1 << l; for (int mask = 1; mask < ll; mask++) {     int len = 0;     for (int bit = 0; bit < l; bit++)         if(mask & (1 << bit)) buf[len++] = str[bit];     buf[len] = '';     string cur(buf);     if(st.find(cur) == st.end()) {         map<string, string>::iterator itr = mp.find(cur);         if(itr == mp.end())  mp.insert(make_pair(cur, tmp));         else if(itr -> second != tmp) {  st.insert(cur);  mp.erase(itr);         }     } }        }        string ans = "";        ch = getchar();        while(true) { if(isupper(ch)) {     int len = 0;     do {         buf[len++] = ch;         ch = getchar();     }while(isupper(ch));     buf[len] = '';     map<string, string>::iterator itr = mp.find((string)buf);     if(itr == mp.end()) {         puts("AMBIGUITY");         while(ch != '#') ch = getchar();         break;     }     else ans += itr -> second; } else if(ch == '#') {     puts(ans.c_str());     break; } else {     ans += ch;     ch = getchar(); }        }        if(ri < re) putchar('n');    }    return 0;}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/379561.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号