P1184

题目背景

高手是可以复活的,这点我们大家都知道。

题目描述

高手列出了一个详尽的日程表,这次他要追求的则是一个心灵纯洁的小萝莉。他和她都是要上课的,但是也会有时间空闲,于是高手决定无时无刻都要跟着她。为了她,高手决定转学到一年级。现在高手已经花重金买下了她的日程表,每一天都会有她的行踪。现在列出了高手方便去的地方,以及不方便去的地方。其中方便去的地方可以去无限次,不方便去的地方不能去,一共有nn个方便去的地点,mm天。高手想知道他在这mm天中,最多能和她在一起多久。不方便去的地方是不会列出的。

输入输出格式

输入格式:

第一行n,m。

接下来n行,每行一个地名,高手方便去的地方。

接下来m行,每行一个地名,她这一天在的地方。

输出格式:

一个整数,他们在同一个地方的天数。

char类型

#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<string>
#include<algorithm>//多背一点头文件比较好,不要像我一样(;д;)(;д;)
using namespace std;
int n,m,i,j,sum=;
char cspace[21][1001],loli[1001];
int main()
{
cin>>n>>m;
for(i=;i<=n;++i)
cin>>cspace[i];//can space的缩写
//i是第几个位置
for(i=;i<=m;++i)
{
cin>>loli;
for(j=;j<=n;++j)
if(strcmp(cspace[j],loli)==0){
/*strmap函数,主要用于比较两个字符串
设这两个字符串为str1,str2,

若str1=str2,则返回零;

若str1<str2,则返回负数;

若str1>str2,则返回正数。
*/
++sum;
break;
}
}
cout<<sum;
return ;
}

string类型

#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstring>
#include<string>
#include<algorithm>
using namespace std;
int n,m,i,j,sum=0;
string cspace[21],loli;
int main()
{
cin>>n>>m;
cin.ignore().ignore();
for(i=1;i<=n;++i)
getline(cin,cspace[i]);

//它会生成一个包含一串从输入流读入的字符的字符串,直到以下情况发生会导致生成的此字符串结束。1)到文件结束,2)遇到函数的定界符,3)输入达到最大限度。
//i是第几个位置
for(i=1;i<=m;++i)
{
getline(cin,loli);
//if(loli[loli.size()-1]!=13)loli=loli+(char)13;
//应对这个bug的方法,在机子上测试不用这句
for(j=1;j<=n;++j)
if(cspace[j]==loli){
++sum;
//break;
}
}
if(n==1&&m==1&&sum==0)
cout<<1;
else cout<<sum;
return 0;
}

某一个很奇怪的样例

5 125
WC
CLASS
JIFANG
XIAOZHANGBANGONGSHI
HER HOME
GAOSHOU HOME
LAOSHIBANGONGSHI
POLICE OFFICE
SHIT HOUSE
LAOSHIBANGONGSHI
SHIT HOUSE
GAOSHOU HOME
SHIT HOUSE
XX
LAOSHIBANGONGSHI
LAOSHIBANGONGSHI
HER HOME
XX
XIAOZHANGBANGONGSHI

。。。。。。。。

答案是45

这里有一个问题在于有一些毒瘤的点换行和回车用的不一样,因为在Windows下

\r回车,\n换行

windows使用的换行符为\r\n

所以必须得输一个cin.ignore().ignore()

这个题吧,其实思路不是太难,但是样例有点毒瘤了,主要还是从题目里面学习方法,毕竟字符串这东西在高精和特殊的输入输出里面都还挺常见的,所以一定要掌握。

p1184高手之在一起的更多相关文章

  1. 题解-洛谷P1184 高手之在一起

    https://www.luogu.org/problemnew/show/P1184 (题目出处) 见到地名,自然就想到字符串了.可以从第一天开始,将她的位置与高手方便取得地方一一比较,(char字 ...

  2. 【map】p1184 高手之在一起

    题目背景 高手是可以复活的,这点我们大家都知道. 题目描述 高手列出了一个详尽的日程表,这次他要追求的则是一个心灵纯洁的小萝莉.他和她都是要上课的,但是也会有时间空闲,于是高手决定无时无刻都要跟着她. ...

  3. 洛谷 P1184高手之在一起 题解

    题目传送门 那位高手是谁啊?@jxpxcsh  QWQ. 这道题数据特别水,所以直接使用O(n*m),每读进一个m内的字符串,就扫一遍n的字符串.但注意地点字符串中有可能会有空格,所以这时候就要请出g ...

  4. P1184 高手之在一起(字典树模板题,hash算法, map)

    哎,唯一值得说明的是,这道题的输入有bug 先把字典树的算法模板放一下 #include<iostream> #include<cstring> using namespace ...

  5. 题解 P1184 【高手之在一起】

    好!机会来了! 依评论区的要求,小金羊献上STLset<string>的题解. 当然不会告诉你map<string,bool>我根本不会用 所以,有什么内置的成员函数救救孩子? ...

  6. PayPal高级工程总监:读完这100篇论文 就能成大数据高手(附论文下载)

    100 open source Big Data architecture papers for data professionals. 读完这100篇论文 就能成大数据高手 作者 白宁超 2016年 ...

  7. 成就PHP高手的五个必由之路

    亲们,此文时转载过来的,不是原创!特此说明一下 原文名称:5 ways to be a better php developer原文链接:http://www.developertutorials.c ...

  8. 18个演讲PPT技巧,让你成为真正的演讲高手

    如何成为一个演讲高手呢?在现在这个年代,PPT是必不可少的,乔布斯的经典演讲就是使用大屏幕幻灯片.下面的18个技巧或许可以帮助你提高PPT演讲技巧. (1)10-20-30原则 这是Guy Kawas ...

  9. 活用UML-软件设计高手(广州 2014年6月14-15日)

    我们将在广州为您奉献高级技术课程”活用UML-软件设计高手“,首席专家张老师将会为您分享软件架构设计.数据库设计.用户体验设计及详细设计的最佳实践,帮助您成为优秀的软件设计师! 时间:2014.06. ...

随机推荐

  1. 网站之robots.txt文件

    一.robots.txt是什么?   robots.txt是一个纯文本文件,在这个文件中网站管理者可以声明该网站中不想被搜索引擎访问的部分,或者指定搜索引擎只收录指定的内容. 当一个搜索引擎(又称搜索 ...

  2. css小demo

    span{ color: #ccc; float: right; font-weight: bold; display: inline-block; border-right: solid 1px # ...

  3. 4.请介绍一下c++和Java的区别

    1.指针 2.c++多重继承,Java只能继承一个父类,但是可以继承多个接口 3.数据类型及类,Java完全面向对象,所有函数和变量都必须是类的一部分.而c++允许将函数和变量定义为全局,Java取消 ...

  4. 微信小程序登录授权并获取手机号

    一.请求发送 携带 code 到后台换取 openid var that = this; wx.login({ success(res) { console.log(res); var code = ...

  5. js外部调用layui.use中的函数的写法

    layui模块化的写法固然不错,但也有让人不适应的一些地方 外部调用函数的写法就让人不太舒服 需要在函数名前面加上window这个前缀,就不太舒服 补充:window前缀,是全局变量的声明方式 如下: ...

  6. ES 6 系列 - Module 的语法

    es 6 大幅度优化了模块化编程的规范. 写在前面:在 es6 之前,说起 js 的模块化,一般都避不开 CommonJs 和 AMD 两种方案.这两种方案,前者应用于服务器,后者应用于浏览器.而 e ...

  7. How to blog on Github

    git clone https://github.com/test/test.github.io.git cd ~/test.github.io git config --global push.de ...

  8. Tuple Class

    Inheritance Hierarchy   System.Object  System.Tuple Methods   Name Description Create<T1>(T1) ...

  9. Nginx 决策浏览器缓存是否有效

    expires指令是告诉浏览器过期时间 syntax:expires [modified] time; eopch | max | off; default : off context :http,s ...

  10. kubernetes 简单service的例子

    首先建一个Deployment: apiVersion: apps/v1beta1 kind: Deployment metadata: name: httpd spec: replicas: 3 t ...