检索关键字

时间限制: 1000ms
内存限制: 65536KB

64位整型:      Java 类名:

类型:

没有

 

没有
 
难度
 
    lv.1
 
    lv.2
 
    lv.3
 
    lv.4
 
    lv.5
 
    lv.6
 
    lv.7
 
    lv.8
 
    lv.9
 
    lv.10
 
搜索
 
数据结构
 
动态规划
 
STL练习
 
高精度计算
 
图论
 
几何
 
数学
 
矩阵计算
 
入门题目
 
字符串
 
博弈论
                  添加

题目描述

有一些关键字,现在给你一个字符串,请你根据此字符串,将关键字根据相关关系排列方便检索。1
字符串长度相同的关键字才有关系,两个字符串在相同位置的相同字符越多则关系越密切,若一样多则字典序越小越密切。

 

输入

多行(少于101),每行一个字符串(只含小写字母,长度不超过1000),连续多行的字符个数相同,视为一组输出,每组的最后一个字符为给你的字符串。

 

输出

每组数据按照相关关系密切程度排序

 

样例输入

aaa
bab
aba
acdes
abcde
aaaaa

样例输出

aaa
bab
abcde
acdes

题意:输入未知数量的的字符串,1>相同长度的视为一组    2>最后一组为比较样例   3>其他的与此比较,按相同位置的相同字符数量从大到小、若相同数量的话,则按字典序顺序输出解决方案:字符串处理,输入时字符串长度相同的为一组,可以先把所有的数据读完再分组处理也可以读一组处理一组。也可一个一个字符串地输入,再进行比较

#include <iostream>
#include <algorithm>
using namespace std;

typedef struct node
{
string s;
int count;
}N;
N n[110];

bool cmp(const N &t1,const N &t2)
{
if(t1.count==t2.count)
return t1.s<t2.s;
return t1.count>t2.count;
}

int main()
{
int num=0;
string s1;
cin>>s1;
n[0].s=s1;
int len=s1.size();
while(cin>>s1)
{
if(len==s1.size())
n[++num].s=s1;
else
{
if(num!=0)
{
for(int i=0;i<num;++i)
{
n[i].count=0;
for(int j=0;j<n[0].s.size();++j)
if(n[i].s[j]==n[num].s[j])
n[i].count++;
}

sort(n,n+num,cmp);
for(int i=0;i<num;++i)
cout<<n[i].s<<endl;
}
num=0;
len=s1.size();
n[0].s=s1;
}
}

if(num!=0)
{
for(int i=0;i<num;++i)
{
n[i].count=0;
for(int j=0;j<n[0].s.size();++j)
if(n[i].s[j]==n[num].s[j])
n[i].count++;
}

sort(n,n+num,cmp);
for(int i=0;i<num;++i)
cout<<n[i].s<<endl;
}
return 0;
}

检索关键字 nyoj的更多相关文章

  1. 用lucene.net根据关键字检索本地word文档

    目前在做一个winform小软件,其中有一个功能是能根据关键字检索本地保存的word文档.第一次是用com读取word方式(见上一篇文章),先遍历文件夹下的word文档,读取每个文档时循环关键字查找, ...

  2. Android百度地图开发04之POI检索

    POI检索 POI~~~ Point of Interest,翻译过来就是“兴趣点”.我们在使用地图的时候,搜索周边的ktv,饭店,或者宾馆的时候,输入关键字,然后地图展示给我们很多个点, 这些点就是 ...

  3. ElasticSearch(十)Elasticsearch检索出的数据列表按字段匹配的优先顺序及搜索单词拼音一部分搜不到数据

    检索出的数据列表按字段匹配的优先顺序 一.举例 比如,发布一篇文章,文章包括基本的字段包括标题.发布时间.点击率.关键字.内容.当在页面中输入“教育”搜索关键词,会检索出指定字段包括“教育”的所有数据 ...

  4. Js实现页面关键字高亮显示

    <!DOCTYPE HTML> <html lang="en"> <meta http-equiv="Content-Type" ...

  5. MyBatis 错误日志检索

    当怀疑是sql语句执行存在错误时,可以用一下关键字检索日志文件: 检索关键字: Cause: SQLException sql原始报错内容: [DEBUG] [2016-05-03 09:37:05 ...

  6. (转载) 百度地图工具类封装(包括定位,附近、城市、范围poi检索,反地理编码)

    目录视图 摘要视图 订阅 赠书 | 异步2周年,技术图书免费选      程序员8月书讯      项目管理+代码托管+文档协作,开发更流畅 百度地图工具类封装(包括定位,附近.城市.范围poi检索, ...

  7. 如何在Github快速找到资源(资源快速检索)

    github 资源检索 Github上的资源如漫天星辰,如果没有技巧,盲目的瞎找,想找到自己想要学习的的知识和资源如大海捞针!!!! 掌握正确的方法,可以说是"妈妈再也不用担心,你找不到代码 ...

  8. Unity 序列化 总结

    查找了 Script Serialization http://docs.unity3d.com/Manual/script-Serialization.html 自定义序列化及例子: http:// ...

  9. 【转载】Lucene.Net无障碍学习和使用:搜索篇

    在上一篇中,我们初步理解了索引的增删改查基本操作.本文着重介绍一下常用的搜索,以及搜索结果的排序和分页.本文的搜索主要是基于前一篇介绍的文本文件的索引,建议下载最后改进的demo对照着看阅读本文,同时 ...

随机推荐

  1. Oracle 11g dataguard check real time apply

    2017年8月24日 16:38 环境:oracle 11.2.0.1 OEL-5.8 注:以下操作都在备库执行 总结方法: 1.FPYJ(125_7)@fpyj123> select open ...

  2. skill prefix neo,non input 1

    1● neo 新的     2● non 不,非,无  

  3. photoshop cc 智能切图

    这节分享一个photoshop cc 开始有的自动生成图标的方法 psd练习文件 http://pan.baidu.com/s/1pL2dwL1 1 工具:我这里用的是photoshop cc 201 ...

  4. laravel中通过查询构造器,实现数据的curd

    //查询构造器: public function query1(){ //利用查询构造器,插入数据: /*$num=DB::table('student')->insert( ['name'=& ...

  5. jsoupa-解析遍历一个HTML

    解析个遍历一个HTML文档 String html ="<html><head><title>First parse</title></ ...

  6. SpingBoot一——demo及阿里云部署

    ◆版权声明:本文出自胖喵~的博客,转载必须注明出处. 转载请注明出处:https://www.cnblogs.com/by-dream/p/9957624.html 双11买了阿里云的服务器,后续计划 ...

  7. 【DevExpress v17.2新功能预告】增强ASP.NET TreeList

    本文主要为大家介绍在下一个主要版本v17.2中,DevExpress ASP.NET TreeList获得的一些重大改进.DevExpress ASP.NET TreeList和GridView控件在 ...

  8. 关于hot miami的沙盒生存俯视角射击游戏

    一些关卡设计元素 撞门杀 扇形视角

  9. L226

    The dean can’t see you at the moment. He is addressing the first-year students in the lecture hall.系 ...

  10. Java实现交换两个String

    在Java中我们所使用的实例变量其实都是一个引用,所以如果要求实现一个swap(String A, String B)这种函数时无法实现的,因为在类方法的定义中是先对行参进行地址传递,然后对形参修改, ...