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. PHP导出CSV文件出现乱码的解决方法

    在做项目时碰到使用外语的情况下,我们就会使用UTF-8编码.但是,在用PHP导出CSV文件时,如果写入的数据是使用UTF-8编码的日语.韩语之类的外文,就会出现乱码. 要解决PHP生成CSV文件的乱码 ...

  2. MySQL数据库性能优化思路与解决方法(一转)

     1.选取最适用的字段属性 MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越 小,在它上面执行的查询也就会越快.因此,在创建表的时候,为了获得更好的性能,我们可以将表中字段的宽度设 ...

  3. [2018.05].NET Core 3 and Support for Windows Desktop Applications

    .NET Core 3 and Support for Windows Desktop Applications Richard 微软官网的内容...net 3.0 升级任务 任重道远 https:/ ...

  4. Docker部署运行springboot项目,并使用Dockerfile制作镜像

    前言: 本来是要搭建一个自动化部署分布式项目的服务器平台的,使用jenkins+k8s+ELK+springboot把一个简单的springboot项目给搞起来,由于工程太大,先分开把每个技术组件单独 ...

  5. linux audit审计(8)--ausearch搜索audit日志文件

    ausearch这个工具,可以针对指定的事件来搜索audit日志文件.默认情况下,ausearch搜索/var/log/audit/audit.log这个文件. The ausearch utilit ...

  6. python数学第九天【统计】

  7. 一、.NET Core MVC 项目结构模板

    一.图文描述,开口干 二.文件结构:  wwwroot 首先,Razor Pages项目中多了一个wwwroot的文件夹,这个文件夹中,主要存放网站的静态资源,如css,网站图片资源文件,js文件,三 ...

  8. js数组中两个有相同删除一个

    for (var i = 0; i < project.Before.length; i++) {                    var j = 0;                   ...

  9. Error: File 'C:\somepath\bin\ARM\Release\App_1.1.218.0_scale-100.appx' not found.

    Hi Everyone, We are working on a fix for this issue as quickly as we can, but we have identified a w ...

  10. SOJ 1685:chopsticks(dp)

    题目链接 说实话挺喜欢soj的界面,简简单单,没有多余的东西hhh(但是简单到连内存限制,时间限制都看不到了. 题意是有个“奇葩”的主人公,吃饭要用三根筷子.两根短的一根长的. 现在给你n根筷子,要在 ...