十五月明


私信TA

用户名:dotcpp0605328

访问量:5435

签 名:

等  级
排  名 319
经  验 5465
参赛次数 0
文章发表 87
年  龄 18
在职情况 学生
学  校 曲阜师范大学
专  业 人工智能

  自我简介:

Easy

解题思路:

注意事项:

参考代码:

以下是 C++ 代码的详细解析:


#include<iostream>

#include<map>

#include<string>

using namespace std;


* 包含必要的 C++ 标准库。


int main(){

    int n;

    char c[207];

    string d;

    cin>>n;

    map<string,int>m;


* `main` 函数:

    * 声明变量:

        * `n`:一个整数,表示要执行的操作次数。

        * `c`:一个字符数组,用于存储输入的字符串。

        * `d`:一个字符串,用于存储操作类型。

        * `m`:一个映射,用于存储字符串和对应的标记。

    * 读取整数 `n`。


    while(cin>>d){

        if(d=="add"){

            gets(c);

            m[c]=1;

        }


* 进入一个循环,读取操作类型 `d`:

    * 如果 `d` 为 "add",表示添加一个字符串:

        * 使用 `gets` 函数读取一个字符串并存储在 `c` 中。

        * 将字符串 `c` 作为键,1 作为值添加到映射 `m` 中。


        if(d=="find"){

            gets(c);

            if(m.find(c)!=m.end())cout<<"yes"<<endl;

            else cout<<"no"<<endl;

        }

    }


* 如果 `d` 为 "find",表示查找一个字符串:

    * 使用 `gets` 函数读取一个字符串并存储在 `c` 中。

    * 检查映射 `m` 中是否存在键 `c`:

        * 如果存在,输出 "yes"。

        * 如果不存在,输出 "no"。


    return 0;

}



* 循环结束,程序返回 0。


 

0.0分

0 人评分

  评论区

  • «
  • »