zoukankan      html  css  js  c++  java
  • 题解 P1184 【高手之在一起】

    好!机会来了!

    依评论区的要求,小金羊献上STLset<string>的题解。

    当然不会告诉你map<string,bool>我根本不会用
    所以,有什么内置的成员函数救救孩子???


    还是先复习 or 预习一下set。

    先给集合一个名字:

    set<元素类型>qwq;
    

    插入元素:

    qwq.insert(元素);
    

    查找元素:

    qwq.find(元素);
    

    如果元素没有找到,返回qwq.end(),是一个空的位置迭代器。

    于是得出:
    如何判断元素p是否存在于qwq中?

    if (qwq.find(p)!=qwq.end())
    {
    	cout<<"Exist."<<endl;
    }
    else cout<<"Not found."<<endl;
    

    以上是这个题的数据结构STL内置成员函数方面。


    然后讨论一下这个题的操作。

    这个题很明显卡的就是Windows VistaXP200378.110!!!
    因为题目测试点下载以后会发现多了一个13号字符' '(空格)......
    然后我们读入数据就必须特判char(13)
    然后每一个地方还不一定不含有空格,所以必须getline
    边读入要匹配的字符串,然后判断是否存在,存在即ans++


    说的还是挺明白的吧......
    星,上代码:

    #include <iostream>
    #include <cstdio>
    #include <string>
    #include <set>
    
    using namespace std;
    
    int main()
    {
    	string input;
    	set<string>qwq;
    	int n,m,ans=0;
    	scanf("%d%d",&n,&m);
    	getline(cin,input);
    	for (register int i=1;i<=n;i++)
    	{
    		getline(cin,input);
    		if (input[input.size()-1]!=(char)13)
    			input=input+char(13);
    		qwq.insert(input);
    	}
    	for (register int i=1;i<=m;i++)
    	{
    		getline(cin,input);
    		if (input[input.size()-1]!=(char)13)
    			input=input+char(13);
    		if (qwq.find(input)!=qwq.end())ans++;
    	}
    	cout<<ans;
    	return 0;
    }
    

    瞎举报前提交记录自己查询:Jelly_Goat
    感谢阅读!

  • 相关阅读:
    python内置模块argparse的使用
    pyqt5中通过pycharm配置designer(win和mac都适用,修改下designer目录路径即可)
    初始pyqt5
    pyqt5学习示例
    python中partial用法
    python中操作csv
    python模块imghdr-----推测图像类型
    portainer docker可视化工具
    靠着这份面试手册成功斩获99家BAT大厂offer
    redis事物有一致性吗?
  • 原文地址:https://www.cnblogs.com/jelly123/p/10452926.html
Copyright © 2011-2022 走看看