链接:登录—专业IT笔试面试备考平台_牛客网
来源:牛客网

题目描述

在写英语作文的时候,两个相同单词靠的太近肯定不好。现在 ZHR 给了你一段nnn个单词的英文,问你有多少对相同单词中间间隔的单词数小于等于kkk 。

输入描述:

第一行两个整数,为nnn 和 kkk 。

第二行nnn个由仅小写字母组成的单词。每个单词长度小于等于101010 。

1≤k≤n≤1051\le k \le n \le 10^51≤k≤n≤105。

输出描述:

一行一个正整数,表示有多少对单词中间间隔的单词数小于等于kkk 。

示例1

输入

复制11 2 i love you you love mi mixue ice cream and tea

11 2
i love you you love mi mixue ice cream and tea

输出

复制2

2

说明

只有 you 和 love 两个单词间隔的单词数小于等于222

示例2

输入

复制10 2 a a a a a a a a a a

10 2
a a a a a a a a a a

输出

复制24

24

思路:用map<string,vector<int> >,一个存他的单词,一个存他的下标,把他的下标存进vector里。在加入一个数的下标i前先判断他的vector数组里有没有数,如果有,说明前面有与他相同的单词,就找到他最左能到的下标i-k+1这个数在vector数组中的下标,然后用他最右边的数的下标减去他最左能到的下标,就是能与他配对的个数。

注意:最后结果用longlong存,如果用int只能通过百分之九十的实例。

#include<iostream>
#include<vector>
#include<algorithm>
#include<map>
using namespace std;int main(){int n,k;long long con=0;scanf("%d%d",&n,&k);map<string,vector<int> > a;for(int i=1;i<=n;i++){string s;cin>>s;if(a[s].size()!=0){int q=lower_bound(a[s].begin(),a[s].end(),i-k-1)-a[s].begin();con+=a[s].size()-q;}a[s].push_back(i);} printf("%lld",con);return 0;
} 

c-英语作文(牛客新生赛)相关推荐

  1. 牛客网赛码网 输入输出格式

    目录 牛客网&赛码网输入输出 牛客网 单行输入 多行输入,每一行是一个测试样例 多个测试用例,每个测试用例有多行 赛码网 单个输入,单个输出 单行多个输入,单行多个输出,空格分割 多个测试案例 ...

  2. 牛客网赛码网 输入输出格式 pythonC++

    牛客网&赛码网 输入输出格式 python&C++ Note: 你的程序需要stdin(标准输入)读取输入,然后stdout(标准输出)来打印结果,举个例子,你可以使用c语言的scan ...

  3. 牛客巅峰赛12th C.一起来看流星雨(旋转卡壳三分)

    牛客巅峰赛12th C.一起来看流星雨(旋转卡壳&三分) 题意:给定二维平面nnn个点,每个点有个速度向量,求最开始距离最远的两个点在运动过程中的最小距离. 思路:求距离最远的两个点就凸包gr ...

  4. 牛客网赛码网输入输出总结(python版)

    1. 单行输入: n, m = map(int, sys.stdin.readline().strip().split()) 对该行中所有元素取整型后赋给等式左边若干参数 2. 多行输入: 先获取第一 ...

  5. 牛客网 赛码网 js输入输出

    牛客网 详细地址 let readline = require('readline') const r1 = readline.createInterface({input: process.stdi ...

  6. 牛客小白赛190615场

    夜色已经很晚了,所以我长话短说 1.表单 链接:https://ac.nowcoder.com/acm/contest/917/C 来源:牛客网 输入描述: 第一行两个整数n,Q 后n行每行一个字符串 ...

  7. oj记录 牛客 高校赛 C派蒙的奇妙冒险------石之海

    题目描述 链接:https://ac.nowcoder.com/acm/contest/33869/C 来源:牛客网 题意 思路 其实只需要判断有没有素数即可,因为最少的染色策略是让所有的素数的颜色相 ...

  8. 牛客网 赛码在线编程中数据读取问题

    一. 数据读取的方式(python3) 1.  input()读取输入数据 while True:try:inputs = input()except:break 2.  网站的数据输入是是一个含有多 ...

  9. 牛客小白赛7 B自杀游戏 (博弈论,SG函数)

    链接:https://www.nowcoder.com/acm/contest/190/B 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32768K,其他语言6553 ...

最新文章

  1. CTFshow php特性 web127
  2. intellij idea 2018 license 可用无废话
  3. 非常实用的word文本括号匹配是否正确的code,可按照此思路扩展到python处理大批量文本文件的检错中,非常实用!!!
  4. SpringBoot之AOP切面的使用
  5. node2vec 图向量
  6. 【ASP.NET】QQ登录,新浪微博登录。
  7. fcm基本原理_fcm聚类算法原理及应用
  8. ss-panel安装笔记
  9. Google知识集锦
  10. 一个农村博士的独白:全家为什么只有我读到了博士?
  11. 雨林木风最新万能GHOST系统制作教程
  12. ubuntu 查看mysql数据库_ubuntu mysql查看数据库
  13. html 老人机可以播放吗,宏强数字能量:通过手机号码看老年人身体健康
  14. 计算机科学家格言,科学家说的名人名言20句
  15. Unity 2D平面显示3D模型(RenderTextrue)
  16. 老年消费市场最新观察:变化/趋势/入局/未来,以人为核心,构建信任感
  17. 杰理之在anc模式下手机断开蓝牙耳机会有噗噗声问题【篇】
  18. 利用 Dynamo 制作简易的变截面钢箱梁
  19. UML建模工具更新情况(2020年8-11月)(三)
  20. 公司注册后未注销需要交罚款吗?

热门文章

  1. Windows+python3.6+Anaconda安装shogun包
  2. mandatory参数的使用
  3. 解决龙格现象matlab,matlab实现Lagrange多项式插值观察龙格现象
  4. 脑波和眼动连通性分析 python-(1)
  5. 方舟服务器延迟n a什么意思,留存分析
  6. Laplace变换基础
  7. 《生命不息,折腾不止》
  8. Python3 《零基础小白从入门到实战》之“continue 语句”
  9. 转 ext文件系统及块组
  10. C语言课设会员计费系统(大作业)