zoukankan      html  css  js  c++  java
  • 10、小易记单词--2017网易春招

    [编程题] 小易记单词
    时间限制:1秒
    空间限制:32768K
    小易参与了一个记单词的小游戏。游戏开始系统提供了m个不同的单词,小易记忆一段时间之后需要在纸上写出他记住的单词。小易一共写出了n个他能记住的单词,如果小易写出的单词是在系统提供的,将获得这个单词长度的平方的分数。注意小易写出的单词可能重复,但是对于每个正确的单词只能计分一次。 
    输入描述:
    输入数据包括三行:
    第一行为两个整数n(1 ≤ n ≤ 50)和m(1 ≤ m ≤ 50)。以空格分隔
    第二行为n个字符串,表示小易能记住的单词,以空格分隔,每个单词的长度小于等于50。
    第三行为m个字符串,系统提供的单词,以空格分隔,每个单词的长度小于等于50。
     
    输出描述:
    输出一个整数表示小易能获得的分数
     
    输入例子:
    3 4 apple orange strawberry strawberry orange grapefruit watermelon
     
    输出例子:
    136
     
    解题思路:本题用n的每个字符串去跟m中字符串比,若相等,则count+=strlen(n)*strlen(n)且break循环m字符串的循环,因为题目中说n可能重复但只算一次,因此使用set进行存储
    注意点:比较两个字符串对于string类型,需要m.c_str()作为strcmp函数的参数,不能直接用string变量
     1 #include <iostream>
     2 #include <string.h>
     3 #include <set>
     4 using namespace std;
     5 
     6 int main()
     7 {
     8     int n,m;
     9 
    10     while(cin>>n>>m)
    11     {
    12         string a;
    13         set<string> nn;
    14         string b;
    15         set<string> mm;
    16         int count = 0;
    17         for(int i=0;i<n;i++)
    18         {
    19             cin>>a;
    20             nn.insert(a);
    21         }
    22         for(int i=0;i<m;i++)
    23         {
    24             cin>>b;
    25             mm.insert(b);
    26         }
    27         set<string>::iterator n_it; //定义前向迭代器
    28         set<string>::iterator m_it; //定义前向迭代器
    29         for(n_it = nn.begin(); n_it != nn.end(); n_it++)
    30         {
    31             for(m_it = mm.begin();m_it!=mm.end();m_it++)
    32             {
    33                 if(strcmp((*n_it).c_str(),(*m_it).c_str()) == 0)
    34                 {
    35                     count += strlen((*n_it).c_str())*strlen((*n_it).c_str());
    36                     break;
    37                 }
    38             }
    39         }
    40         cout<<count<<endl;
    41 
    42     }
    43 }
  • 相关阅读:
    DBHelper
    ASP.NET WEBAPI oken验证
    市面上的网盘和搜索网盘资源网站
    C#批量删除注释与空行
    DB help
    抽象工厂1
    抽象工厂
    单例模式的八种写法
    Docker概念
    Django的安装
  • 原文地址:https://www.cnblogs.com/qqky/p/6931786.html
Copyright © 2011-2022 走看看