HJ145 小红背单词

  • 题目
  • 题解(24)
  • 讨论(19)
  • 排行

简单 通过率:41.36% 时间限制:1秒 空间限制:256M

知识点小红书哈希模拟

校招时部分企业笔试将禁止编程题跳出页面,为提前适应,练习时请使用在线自测,而非本地IDE。

描述

小红每天都要背单词,然后她会把每天记住了多少单词记录下来,并在小红书上打卡。

当小红背单词时,如果她已经记住了ii个单词,且背了一个没有记住的新单词i+1i+1次,则她就会记住这个新的单词。

例如,当她按顺序背"you","thank","thank"时,她第一次背单词"you"时她就能记住"you"。而由于她已经记住了一个单词,所以需要背两次"thank"才能记住"thank"。

现在你知道了小红背单词的顺序,请你求出小红今天记住了多少个单词。

输入描述:

第一行一个整数n(1≤n≤10000)n(1≤n≤10000)。

接下来nn行,每行一个字符串,保证每个字符串长度不超过 10。

输出描述:

输出一个整数,表示她记住了多少个单词。

示例1

输入:

复制代码
5
you
thank
queue
queue
thank

复制输出:

复制代码
2

复制说明:

复制代码

小红先记住了单词"you",又因为背了两次"queue",于是记住了单词"queue"。由于已经记住了两个单词,所以背两次"thank"还不能让小红记住。

cpp 复制代码
#include <iostream>
#include<map>
using namespace std;

int main() {
    int n;cin>>n;
    int max=0;
    map<string,int>mp;
    map<string,int>remeber;
    for(int i=0;i<n;++i){
        string s;cin>>s;
        ++mp[s];
        if(remeber[s]==1){
            continue;
        }
        if(mp[s]>max){
            max=mp[s];
            remeber[s]=1;
        }
    }
    cout<<max;
}
// 64 位输出请用 printf("%lld")
相关推荐
find1star17 分钟前
LeetCode 25:K 个一组翻转链表
java·数据结构·算法·leetcode·链表·职场和发展·动态规划
光电笑映33 分钟前
Linux 线程同步与互斥:锁的本质、条件变量与信号量的底层原理
linux·运维·服务器·开发语言·c++
jearry44 分钟前
WebView2 原生拖放的桥接之道:拆解 yyzTools 的 drop-zone.js
前端·c++
零基础的修炼1 小时前
CUDA知识汇总
开发语言·c++·编辑器
欧特克_Glodon1 小时前
OpenCV计算机视觉开发入门与实践<三十八>:图像添加数字水印
c++·人工智能·opencv·计算机视觉
Bmob后端云1 小时前
Bmob后端云实战|Python给备忘录接入AI摘要、文本润色功能
算法·github
小鱼干..1 小时前
CTFHub技能树-ssrf-URL Bypass
算法
蒸蒸yyyyzwd1 小时前
与Redis和MySQL有关的知识
c++·求职招聘·八股
欧特克_Glodon2 小时前
OpenCV计算机视觉开发入门与实践<四十>:自动识别物体数量
c++·人工智能·opencv·计算机视觉
chushiyunen2 小时前
动态规划、贪心算法、分治法
算法·贪心算法·动态规划