题目

题目

 


 

分析

第一次用stringstream,真TMD的好用

 


 

代码

#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
getchar();//回车
while(n--)
{
string s1,s2;
getline(cin,s1);
getline(cin,s2);
for(int i=0;i<s1.length();i++)
if(!isalpha(s1[i]) && !isdigit(s1[i])) s1[i]=' ';
for(int i=0;i<s2.length();i++)
if(!isalpha(s2[i]) && !isdigit(s2[i])) s2[i]=' ';
int l1=0,l2=0;
map<string,string> m;
map<string,string>::iterator it;
vector<string> c,d,e;
stringstream ss(s1),ss2(s2);
string a,b;
while(ss>>a)
{
ss>>b; m[a]=b; l1++;
}
while(ss2>>a)
{
ss2>>b; l2++;
if(!m.count(a)) c.push_back(a);
else if(m[a]!=b) d.push_back(a);
if(m.count(a))
{
it=m.find(a);
m.erase(it);
}
}
sort(d.begin(),d.end());
sort(c.begin(),c.end());
if(c.size())
{
cout<<"+";
for(int i=0;i<c.size();i++)
{
cout<<c[i];
if(i==c.size()-1) cout<<endl;
else cout<<",";
}
}
if(m.size())
{
cout<<"-";
for(map<string,string>::iterator i=m.begin();i!=m.end();i++)
{
if(i!=m.begin()) cout<<',';
cout<<i->first;
}
cout<<endl;
}
if(d.size())
{
cout<<"*";
for(int i=0;i<d.size();i++)
{
cout<<d[i];
if(i==d.size()-1) cout<<endl;
else cout<<',';
}
}
if(!c.size()&&!d.size()&&!m.size()) puts("No changes");
cout<<endl;
}
return 0;
}

【UVA】12504 Updating a Dictionary(STL)的更多相关文章

  1. 【UVA】10635 Prince and Princess(LCS)

    题目 传送门:QWQ 分析 水题.$ O(nlogn) $的LCS 代码 #include <bits/stdc++.h> using namespace std; *, INF=1e9; ...

  2. 【UVa】1606 Amphiphilic Carbon Molecules(计算几何)

    题目 题目 分析 跟着lrj学的,理解了,然而不是很熟,还是发上来供以后复习 代码 #include <bits/stdc++.h> using namespace std; ; stru ...

  3. 【UVa】1343 The Rotation Game(IDA*)

    题目 题目     分析 lrj代码.... 还有is_final是保留字,害的我CE了好几发.     代码 #include <cstdio> #include <algorit ...

  4. 【UVa】11212 Editing a Book(IDA*)

    题目 题目     分析 get一下IDA*的技巧,感觉总体来说不难,主要是剪枝比较难想. 这是lrj的代码,比较通俗易懂,关键就是选定一个区间再取出来,插入到一个位置,接下来转移到这个状态.     ...

  5. 【原】FMDB源码阅读(二)

    [原]FMDB源码阅读(二) 本文转载请注明出处 -- polobymulberry-博客园 1. 前言 上一篇只是简单地过了一下FMDB一个简单例子的基本流程,并没有涉及到FMDB的所有方方面面,比 ...

  6. 【原】FMDB源码阅读(一)

    [原]FMDB源码阅读(一) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 说实话,之前的SDWebImage和AFNetworking这两个组件我还是使用过的,但是对于 ...

  7. 【原】AFNetworking源码阅读(四)

    [原]AFNetworking源码阅读(四) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 上一篇还遗留了很多问题,包括AFURLSessionManagerTaskDe ...

  8. 【原】SDWebImage源码阅读(五)

    [原]SDWebImage源码阅读(五) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 前面的代码并没有特意去讲SDWebImage的缓存机制,主要是想单独开一章节专门讲 ...

  9. 【原】SDWebImage源码阅读(四)

    [原]SDWebImage源码阅读(四) 本文转载请注明出处 —— polobymulberry-博客园 1. 前言 SDWebImage中主要实现了NSURLConnectionDataDelega ...

随机推荐

  1. Win10启动盘制作工具

    Rufus https://rufus.akeo.ie/ http://www.iplaysoft.com/windows-10-udisk-install.html

  2. hexo+github部署

    废话不多少,接着上次配置的环境进行github部署. 拥有自己的github 如果还没有github的账号就注册一个吧,传送门:GitHub官网:http://www.github.com 创建一个创 ...

  3. JavaScript 中 OnLoad事件用法总结

    还差一天现在手头上的这套网站就写完了,中午蹭了半天还是没睡好,干脆爬起来把今天上午写到的onload事件给整理一下. 一般用到比较多的就是初始化数据或者效果. 1.直接写在<body>标签 ...

  4. MapReduce工作原理(简单实例)

    Map-Reduce框架的运作完全基于<key,value>对,即数据的输入是一批<key,value>对,生成的结果也是一批<key,value>对,只是有时候它 ...

  5. [转]:What happens to older developers?

    原文链接可能失效. This post is old but will remain on the front page for the time being. 140313. Jeff Jenkin ...

  6. Git-Svn 建立工作目录

    使用Git-SVN 建立工作目录 GIT-SVN可以以SVN的版本为基础, 实现”私有”的版本管理功能. 这样一些不成熟但又需要记录的版本就不必提交到SVN上, 而只在自己本地私有的版本里出现. 下面 ...

  7. linux自学(七)之开始ccentos学习,安装jdk

    上一篇:linux自学(六)之开始centos学习,更换yum源 如果你认真跟着前面操作那么一定都完成相关配置及下载,我们的目的是部署Javaweb项目,需要jdk,mysql,tomcat.那么接下 ...

  8. 【java基础】Java运算符优先级

    Java运算符优先级 序列号 符号 名称 结合性(与操作数) 目数 说明 1 . 点 从左到右 双目 ( ) 圆括号 从左到右   [ ] 方括号 从左到右   2 + 正号 从右到左 单目 - 负号 ...

  9. asp.net远程调用WebService的两种方法(转载)

    一,静态方法在“解决方案‘项目名’” -> 相应的文件夹,如“Web References” ->右键“添加WEB引用”->在URL里写入地址.二,动态方法在“解决方案‘项目名’” ...

  10. $x \rightarrow \infty$时多项式型函数的极限

    \[ \lim_{x \rightarrow \infty} \frac{\sqrt{4x^6-5x^5}-2x^3}{\sqrt[3]{27x^6+8x}} \\ =\lim_{x \rightar ...