HDU1251-统计难题-map+输入
Ignatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为前缀的单词数量(单词本身也是自己的前缀).
Input输入数据的第一部分是一张单词表,每行一个单词,单词的长度不超过10,它们代表的是老师交给Ignatius统计的单词,一个空行代表单词表的结束.第二部分是一连串的提问,每行一个提问,每个提问都是一个字符串.
注意:本题只有一组测试数据,处理到文件结束.
Output对于每个提问,给出以该字符串为前缀的单词的数量.
Sample Input
- banana
- band
- bee
- absolute
- acm
- ba
- b
- band
- abc
Sample Output
- 2
- 3
- 1
- 0
- 题意:
- 输入以该字符串为前缀的单词的数量。
- 注意输入:
scanf 以空格、换行符结束输入;
scanf()以Space、Enter、Tab结束一次输入,不会舍弃最后的回车符(即回车符会残留在缓冲区中)
gets 是读取换行符的,不过它会把换行符转换为'\0'
gets读入以任何字符开始的字符串,以换行符结束,但之后会丢弃换行符并以'\0'代替;
在数据大量的情况下,用gets读取快于scanf()10倍以上
scanf不能接受空格、制表符Tab、回车等;
而gets能够接受空格、制表符Tab和回车等。将接收输入的整个字符串直到遇到换行为止。
- #include<stdio.h>
- #include<map>
- #include<iostream>
- #include<string.h>
- using namespace std;
- typedef long long ll;
- const int x=;
- const int N=1e6+;
- ll book[N];
- map<string,ll>mp;
- char a[];
- int main()
- {
- //string a;
- while()
- {
- // cin>>a;
- gets(a);
- // if(a[0]=='\0')
- // break;
- int len=strlen(a);
- if(len==)
- break;
- string s;
- s.clear();
- for(int i=;i<len;i++)
- {
- // sum=sum*x+a[i];
- s+=a[i];
- mp[s]++;
- }
- }
- while(cin>>a)
- cout<<mp[a]<<endl;
- return ;
- }
HDU1251-统计难题-map+输入的更多相关文章
- HDU1251 统计难题[map的应用][Trie树]
一.题意 给出一组单词,另给出一组单词用作查询,求解对于每个用于查询的单词,前一组中有多少个单词以其为前缀. 二.分析 根据题目很容易想到hash的方法,首先可以朴素的考虑将第一组中的所有单词的前缀利 ...
- HDU-1251 统计难题,字典树或者map!
统计难题 很久就看过这个题了,但不会~~~不会~~ 题意:给出一张单词表,然后下面有若干查询,每次给出一个单词,问单词表中是否存在以这个单词为前缀的单词,输出数量.本身也是自身的前缀.只有一组数据! ...
- HDU1251 统计难题(Trie)
统计难题 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others) Total Subm ...
- hdu1251(统计难题)
这题就是一个字典树的模板题 统计难题 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Othe ...
- HDU-1251 统计难题(我就是不用字典树)
统计难题 ?戳这里可以前往原题 Problem Description Ignatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为 ...
- hdu1251 统计难题
地址:http://acm.split.hdu.edu.cn/showproblem.php?pid=1251 题目: 统计难题 Time Limit: 4000/2000 MS (Java/Othe ...
- HDU1251统计难题(水字典树)
统计难题 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others) Total Subm ...
- hdu1251统计难题(trie)
统计难题 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others)Total Submi ...
- HDU1251 统计难题 【trie树】
统计难题 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 131070/65535 K (Java/Others) Total Subm ...
- HDU1251 统计难题(字典树|map
Ignatius最近遇到一个难题,老师交给他很多单词(只有小写字母组成,不会有重复的单词出现),现在老师要他统计出以某个字符串为前缀的单词数量(单词本身也是自己的前缀). Input输入数据的第一部分 ...
随机推荐
- 用 Flask 来写个轻博客 (29) — 使用 Flask-Admin 实现后台管理 SQLAlchemy
目录 目录 前文列表 扩展阅读 Flask-Admin BaseView 基础管理页面 ModelView 实现效果 前文列表 用 Flask 来写个轻博客 (1) - 创建项目 用 Flask 来写 ...
- WPF自定义控件(三)
今天我们开始制作我们的按钮,主要的效果就是一个按钮正常状态.鼠标滑过.按下三态显示不同的图片. 首先我们需要给扩展按钮添加三个属性,分别是正常状态图片,鼠标滑过图片,按钮按下图片. 先贴出Button ...
- Scrum 指南总结
https://wenku.baidu.com/view/86e0979176eeaeaad1f3305a.html 原文地址:
- spring data jpa 一对多查询
在一对多关系中,我们习惯把一的一方称之为主表,把多的一方称之为从表.在数据库中建立一对多的关系,需要使用数据库的外键约束. 什么是外键? 指的是从表中有一列,取值参照主表的主键,这一列就是外键. pa ...
- web自动化,selenium 无法清空输入框默认值继续输入
有的页面输入框自带默认值,想要修改里面的内容时,先使用clear()再send_keys(),这种方式无法清除只会在默认值后面追加内容,不是我想要的结果 解决方法: 方法一: 先双击,后直接send_ ...
- shell脚本对代码执行时间的计时
时间秒: $(date +%s) 算数表达式: $(($cost_time/60)) $(($cost_time%60)) #!/bin/bash # ccache is from epel mirr ...
- go递归遍历文件目录
package main import ( "fmt" "io/ioutil" "log" ) //文件目录树形结构节点 type dirT ...
- PHP多选测试练习
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- win10下logstash导入csv
input { file { path => ["E:/222/*.csv"] start_position => "beginning" } } ...
- 【转】SQLSERVER磁盘原理
[声明:本篇博客转载自http://www.cnblogs.com/ljhdo/p/5149401.html] 最近一段时间的工作主要是与SQLSERVER数据库打交道,需要对SQLSERVER有一个 ...