UVA 12504(模拟)
来源:互联网 发布:mac有什么网游加速器啊 编辑:程序博客网 时间:2024/06/17 07:26
题意:有2个集合,请你输出三个状态的改变:
1,.从原集合增加了元素,在输出前输出 +
2.,.从原集合删去了元素,在输出前输出 -
3.,.从原集合改变了元素,在输出前输出 *
题解:直接模拟就可以了,这里注意可以为空集合,一定要注意处理这种情况
#include<iostream>#include<cstdio>#include<algorithm>#include<cstring>#include<string>#include<vector>#include<queue>#include<map>#include<set>#include<utility>using namespace std;#define LL long long #define N int(1e5+10)#define lson L,mid,rt<<1#define rson mid+1,R,rt<<1|1char s[N];map<string,string>v1;map<string,string>v2;set<string>st;vector<string>ans1;vector<string>ans2;vector<string>ans3;int main (){#ifdef CDZSCfreopen("i.txt","r",stdin);#endifint n,t,cas=0;scanf("%d",&t);while(t--){ans1.clear();ans3.clear();ans2.clear();st.clear();v1.clear();v2.clear();string tmp1,tmp2;scanf("%s",s);int len = strlen(s);int ok=0;for(int i = 1; i<len;i++){if(s[i]==':'){ok=1;}if(s[i]==','||s[i]=='}'){ok=0;v1[tmp1]=tmp2;st.insert(tmp1);tmp1.clear();tmp2.clear();}if(ok==0&&(s[i]!='{'&&s[i]!=','&&s[i]!=':'))tmp1+=s[i];if(ok==1&&(s[i]!='{'&&s[i]!=','&&s[i]!=':'))tmp2+=s[i];}tmp1.clear();tmp2.clear();ok=0;scanf("%s",s);len = strlen(s);for(int i = 1; i<len;i++){if(s[i]==':'){ok=1;}if(s[i]==','||s[i]=='}'){ok=0;v2[tmp1]=tmp2;st.insert(tmp1);tmp1.clear();tmp2.clear();}if(ok==0&&(s[i]!='{'&&s[i]!=','&&s[i]!=':'))tmp1+=s[i];if(ok==1&&(s[i]!='{'&&s[i]!=','&&s[i]!=':'))tmp2+=s[i];}int okK=1;if(v1.count(""))v1.erase("");if(v2.count(""))v2.erase("");if(st.count(""))st.erase("");set<string>::iterator it;for(it=st.begin();it!=st.end();it++){if(v1.count(*it)&&v2.count(*it)){if(v1[*it]==v2[*it])continue;else{ans1.push_back(*it);okK=0;}}else if(v1.count(*it)&&!v2.count(*it)){okK=0;ans2.push_back(*it);}else if(!v1.count(*it)&&v2.count(*it)){okK=0;ans3.push_back(*it);}}if(okK||v1.count("")&&v2.count("")){puts("No changes");puts("");continue;}else{for(int i=0;i<ans3.size();i++)printf("%c%s",i==0?'+':',',ans3[i].c_str());if(ans3.size())puts("");for(int i=0;i<ans2.size();i++)printf("%c%s",i==0?'-':',',ans2[i].c_str());if(ans2.size())puts("");for(int i=0;i<ans1.size();i++){printf("%c%s",i==0?'*':',',ans1[i].c_str());}if(ans1.size())puts("");}puts("");}return 0;}
0 0
- UVA 12504(模拟)
- UVA Palindromes(模拟)
- uva 133(模拟)
- UVA 12662(模拟)
- UVA 12503(模拟)
- uva 445 uva 489 uva 490 uva 694(模拟)
- uva 409(字符串模拟)
- UVA 101(栈模拟)
- uva 10152 ShellSort(模拟)
- UVA 305 - Joseph(模拟)
- UVA - 11291 Smeech (模拟)
- UVa 230 - Borrowers(模拟)
- UVA Automatic Poetry(模拟)
- UVa 220 - Othello(模拟)
- UVa 1592模拟(map)
- UVA - 815 Flooded!(模拟)
- UVA 10033Interpreter (模拟)
- UVA 11039(模拟,贪心)
- 【GDOI 模拟3.5】总结
- 关于毕业设计——面向运动的无线体域网系统设计的构想
- Yahoo性能优化35条军规
- 西南BANG 之 android学习笔记1——5个android UI 布局
- python2.5 编译出错
- UVA 12504(模拟)
- [读书笔记]恰如其分的软件架构-概述
- wordpress爆破数据
- jquery 划词百度(谷歌、必应等)搜索
- win8、win8.1系统查看连接过的WiFi的密码
- URL,下载网页图片。
- BZOJ2660/Beijing wc2012 最多的方案
- Vector查找
- 手机网站自适应屏幕大小方法总结1