输入一个字典,用*****结尾,输入若干单词用00000结尾。每个单词w,都需要在字典中找出所有可以用w的字母重排后得到的单词,并按照字典序从小到大的顺序在一行中输出(如果不存在,输出:( ,输入单词之间用空格或空行隔开,且所有输入单词都由不超过6个小写字母组成,注意,字典中的单词不一定按字典排列)。

输入: tarp given score refund only trap work earn course pepper part *****

resco nfudre aptr sett oresuc 00000

输出:

score

refund

part tarp trap

:(

course

#include <iostream>
#include <cstdlib>
#include <cstring>
using namespace std;
//字符比较函数
int CmpChar(const void* _a,const void* _b)
{char* a=(char*)_a;char* b=(char*)_b;return *a-*b;
}
//字符串比较函数
int CmpString(const void* _a,const void* _b)
{char* a=(char*)_a;char* b=(char*)_b;return strcmp(a,b);
}int main()
{char word[2000][10];int len=0;while(1){scanf("%s",word[len]);if('*'==word[len][0])   //遇到结束标志结束循环{break;}len++;}qsort(word,len,sizeof(word[0]),CmpString); //给所有单词排序char sorted[2000][10];for(int i=0;i<len;i++){strcpy(sorted[i],word[i]);qsort(sorted[i],strlen(sorted[i]),sizeof(char),CmpChar); //给每个单词排序}char str[10];while(scanf("%s",str)==1)   //持续读取到文件结尾{qsort(str,strlen(str),sizeof(char),CmpChar);  //给输入单词排序int flag=0;for(int i=0;i<len;i++){if(0==strcmp(sorted[i],str)){flag=1;cout<<word[i]<<' '; //输出原始单词,而不是排序后的}}if(!flag){cout<<":(";}cout<<endl;}return 0;
}

字母重排(算法竞赛入门经典)相关推荐

  1. 刘汝佳《算法竞赛入门经典》---总结

    刘汝佳:<算法竞赛入门经典> 三步: 基本的数据结构+算法知识: 数论等数学基本知识: 锻炼联想建模能力.知识与实际相结合,解决实际问题! 第一章:程序设计入门 1.a/b 当a.b为整数 ...

  2. 古老的密码(Ancient Cipher,UVa1339)(算法竞赛入门经典 例题4-1)C++

    题目:给定两个不超过100的字符串,判断是否可以做到将其中一个字符串通过重排和映射的操作,使得两个字符串相同.例如,JWPUDJSTVP重排后可以得到WJDUPSJPVT,然后每个字母只要通过一次映射 ...

  3. 算法竞赛入门经典(刘汝佳)——代码笔记

    Reference: <算法竞赛入门经典>(刘汝佳)第一版.第二版 ------------------------------------------------------------ ...

  4. 算法竞赛入门经典(第二版)第三章习题

    声明:作者水平有限,只是会基础C语言的小菜,C++还未入门.作者仅根据算法竞赛入门经典(第二版)书上第三章习题所述题意而编写,并未严格按照原题的输入输出编写,代码仅经过个人测试(OJ网站太慢了).代码 ...

  5. #《算法竞赛入门经典》勘误

    转自http://code.google.com/p/aoapc-book/wiki/BeginningAlgorithmContestsErrata #<算法竞赛入门经典>勘误 关于勘误 ...

  6. 《算法竞赛入门经典》Chap3

    <算法竞赛入门经典(第二版)>第三章 思考题 题目1 必要的存储量 题目2 统计字符1的个数 示例程序 程序3-1 逆序输出 程序3-2 开灯问题 程序3-3 蛇形填数 程序3-4 竖式问 ...

  7. [刷题]算法竞赛入门经典 3-10/UVa1587 3-11/UVa1588

    书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 题目:算法竞赛入门经典 3-10/UVa1587:Box 代码: //UVa1587 - Box #include&l ...

  8. 《算法竞赛入门经典训练指南》pdf

    下载地址:网盘下载 基本介绍 编辑 内容简介 <算法竞赛入门经典:训练指南>题目多选自近年来ACM/ICPC区域赛和总决赛真题,内容全面,信息量大,覆盖了常见算法竞赛中的大多数细分知识点. ...

  9. 算法竞赛入门经典训练指南

    最近在看算法竞赛入门经典训练指南这本书,书中不错的算法我将在博客中发布,和大家共同学习. 题目: 在你的王国里有一条n个头的恶龙,你希望雇一些骑士把它杀死(即砍掉所有头).村里有m个骑士可以雇佣,一个 ...

  10. (Step1-500题)UVaOJ+算法竞赛入门经典+挑战编程+USACO

    下面给出的题目共计560道,去掉重复的也有近500题,作为ACMer Training Step1,用1年到1年半年时间完成.打牢基础,厚积薄发. 一.UVaOJ http://uva.onlinej ...

最新文章

  1. 常见排序算法复杂度总结
  2. 3检测人头_基于人头检测技术客流统计摄像头及管理平台
  3. python软件开发-有哪些值得推荐的 Python 开发工具?
  4. (花里胡哨)New Game!(牛客国庆集训派对Day1)
  5. Azure 6 月新公布
  6. t2 初识Tornado
  7. python类中init_Python类中的__init__() 和 self 的解析
  8. 完全平方数 HYSBZ - 2440 (莫比乌斯函数容斥)
  9. MATLAB高光谱图像构建KNN图
  10. qq浏览器如何进入私密 qq浏览器怎样进入私密
  11. 前魅族科技高级副总裁李楠:iPhone 11的工业设计完全崩盘
  12. Openstack 一键安装部署 单节点
  13. Web应用程序系统的多用户权限控制设计及实现-总述【1】
  14. websocket html5 api,HTML5 新特性之 Websocket
  15. 深入解析C/C++的优缺点以及就业方向
  16. 数学建模——层次分析法
  17. WinInet 错误代码 (12001 - 12156 )
  18. 文秘专业计算机基础考题,2017年大学计算机基础考试试题附带答案
  19. knockoutjs的某些坑总结
  20. Visual Odometry技术 (Of VSLAM)

热门文章

  1. Excel如何提取单元格中最后一次出现的数值
  2. NFT 生成物及素材展示(小熊、性别形象、道具)
  3. YOLO系列代码解读(图像检测)
  4. 计算机应用基础数制试题及答案,计算机应用基础试题及答案1.doc
  5. 蓝海创意云丨干货:V-Ray渲染后期处理雪中建筑效果图
  6. PSAM卡之常用APDU指令错误码
  7. python版佛祖保佑
  8. rpgmakermv \c 常用颜色一览
  9. 清除U盘内所占的隐藏空间(U盘容量突然变小了)
  10. hud 6078 Wavel Sequence