[code]字母重排



|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
|
#include<stdio.h>#include<stdlib.h>#include<string.h>int n;char word[ 1000][10 ],sorted[ 1000][10 ];//字符比较函数int cmp_char(const void * _a, const void *_b){ char* a=(char*)_a ; char* b=(char*)_b ; return *a-* b;}int cmp_string(const void * _a,const void * _b){ char* a=(char *) _a; char* b=(char *) _b; return strcmp (a, b);}void main(){ int i; char s[10 ]; n=0 ; for(;;) { scanf ("%s",word[n ]); if(word [n][ 0]=='*' )break; n ++; } qsort(word ,n, sizeof(word [0]), cmp_string);// 给所有单词排序 for(i=0 ;i< n;i++) { strcpy (sorted[ i],word[i ]); qsort (sorted[ i],strlen(sorted [i]), sizeof(char ),cmp_char); } while(scanf("%s" ,s)== 1)// 持续督导文件结束 { int found =0; qsort (s, strlen(s ),sizeof(char),cmp_char ); for( i =0; i<n;i ++) if(strcmp (sorted[ i],s)==0 ) { found =1; printf ("%s ",word[i ]); } if(!found )printf( ":("); printf ("\n"); }} |
[code]字母重排的更多相关文章
- Algorithm --> 字母重排
字母重排 输入一个字典(用***结尾),然后再输入若干单词.没输入一个单词w,都需要在字典中找出所有可以用w的字幕重排后得到的单词,并按照字典序从小到大的顺序在一行中输出,如果不存在,输出“:(”.单 ...
- Problem D Ananagrams(map的使用)
题目链接:Problem D 题意:输入一些单词,找出所有满足如下条件的单词:该单词不能通过字母重排,得到输入文本中的另一个单词.在判断是否满足条件时,字母不区分大小写. 但是输出时应保留原始大小写, ...
- Codeforces 补题记录
首先总结一下前段时间遇到过的一些有意思的题. Round #474 (Div. 1 + Div. 2, combined) Problem G 其实关键就是n这个数在排列中的位置. 这样对于一个排 ...
- Codeforces Round #524 (Div. 2) codeforces 1080A~1080F
目录 codeforces1080A codeforces 1080B codeforces 1080C codeforces 1080D codeforces 1080E codeforces 10 ...
- 算法入门笔记------------Day4
1.WERTYU 输入一个错位后敲出的字符串,输出打字员本来想打出的字 #include<stdio.h> char *s="`1234567890-=QWERTYUIOP[]\ ...
- UVA 156 Ananagrams ---map
题目链接 题意:输入一些单词,找出所有满足如下条件的单词:该单词不能通过字母重排,得到输入文本中的另外一个单词.在判断是否满足条件时,字母不分大小写,但在输出时应保留输入中的大小写,按字典序进行排列( ...
- hdu 1113 Word Amalgamation 解题报告
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1113 题意:输入一个字典,然后再输入若干单词(每行中,1 <= 单词数 <= 100,并且 ...
- UVa 156 Ananagrams
题意:给出一些单词,在这些单词里面找出不能通过字母重排得到的单词(判断的时候不用管大小写),然后按照字典序输出. 学习的紫书的map= = 将每一个单词标准化 先都转化为小写,再排序(即满足了题目中说 ...
- 排列组合函数next_permutation()
next_permution(),按照字典序进行排列组合, 括号里的参数为类似sort里面的参数,用法相同 #include <bits/stdc++.h> using namespace ...
随机推荐
- 错误: symbol lookup error: /usr/local/lib/libreadline.so.6: undefined symbol: PC
su - root mkdir temp mv /local/ldconfig apt-get update
- Linux查找文件中的字符串命令
grep -nr 'archermind' -r, --recursive Read all files under each directory, recursively, following sy ...
- Python - 字母算术谜题
如: SEND + MORE == MONEY 9567 + 1085 == 10652 字母和数字一一对应 首字母不为0 解法: import re from itertools import ...
- iosOC可变数组选择,冒泡排序
#pragma mark 可变数组的排序 NSMutableArray * array = [NSMutableArray arrayWithObjects: @"1",@&quo ...
- javascript 如何正确使用getElementById,getElementsByName(), and getElementsByTagName()
WEB标准下可以通过getElementById(), getElementsByName(), and getElementsByTagName()访问DOCUMENT中的任一个标签. (1)get ...
- 线程中sleep方法和wait方法有什么区别?
如果你没有接触过java的多线程,那么多对于这两个方法可能有点陌生,看名字好像这两个方法是差不多的,但是实际上面差别好大. 首先我们看一下官方的API Sleep(sleep有两个方法,另一个方法传递 ...
- js 时间
<html> <head> <meta charset="utf-8" /> <title></title> <s ...
- boolean类型相关
如果逻辑对象无初始值或者其值为 0.-0.null."".false.undefined 或者 NaN,那么对象的值为 false.否则,其值为 true(即使当自变量为字符串 & ...
- c专家编程---优先级规则
对于一些复杂的类型组合,总是搞不明白,今天阅读了“优先级规则”这块,有了进一步的理解,特将规则记在此处,供自己学习查询使用. 优先级规则: A.声明从它的名字开始读取,然后按照优先级顺序依次读取 B. ...
- 【转】PHP android ios相互兼容的AES加密算法
APP项目用户密码传输一直没有用HTTPS,考虑到用户的隐私暂时先用AES对密码加密,以后也可以用于手机端与服务端加密交互. PHP的免费版phpAES项目,手机端解码各种不对. 好不容易找了PHP ...