UVA-156 Ananagrams
来源:互联网 发布:天天炫舞抽坐骑软件 编辑:程序博客网 时间:2024/05/01 07:27
2016-07-14
UVA - 156 Ananagrams
题目大意:输入一些单词,按字典序顺序输出无视大小写及字母顺序后,只出现一次的单词。如 STOP、SOPT、spTO 算重复出现。
解题思路:保留输入单词,把输入的单词化为小写后对字符串排序,这时候出现字母个数相同的单词会被排成一样,然后遍历查找是否有相同单词,没有的话把对应原单词存于一个二维数组中,对二维数组排序后输出。
注意:在标记不符合条件的单词时要注意。注意标记的变化。
#include <iostream>#include <cstring>#include <stdlib.h>using namespace std;char str[1000][1000];char t[1000][1000];char ans[1000][1000];int num[1000];int n = 0;int temp = 0;int cmp ( const void*a,const void*b ) { char *_a = (char*)a; char *_b = (char*)b; return (*_a - *_b);}int comp ( const void*a,const void*b ) { char *_a = (char*)a; char *_b = (char*)b; return strcmp(_a,_b);}int main() { memset ( num , 0 , sizeof(num) ); while ( cin >> str[n] && strcmp(str[n],"#") ) {//边输入边将所输入排列的字符串进行处理(排序,全部转换为小写字母) for (int i = 0; i < strlen(str[n]); i++) { if ( str[n][i] >= 'A' && str[n][i] <= 'Z' ) t[n][i] = str[n][i] + 'a' - 'A'; else t[n][i] = str[n][i]; } qsort ( t[n] , strlen(t[n]) , sizeof(t[n][0]) , cmp ); n++; } for (int i = 0; i < n-1; i++) {//标记哪些是不符合条件的 for (int j = i+1; j < n; j++) { if ( strcmp(t[i],t[j]) == 0 ) { num[i]++; num[j]++; } } } for (int i = 0; i < n; i++) {//存入另一个数组,以便输出 if ( num[i] == 0 ) { strcpy ( ans[temp] , str[i] ); temp++; } } qsort ( ans , temp , sizeof(ans[0]) , comp ); for (int i = 0; i < temp; i++) cout << ans[i] << endl; return 0;}
1 0
- UVa 156 - Ananagrams
- uva 156 Ananagrams
- UVA 156 - Ananagrams
- UVA 156 - Ananagrams
- UVa 156 - Ananagrams
- uva 156 - Ananagrams
- uva- 156-Ananagrams
- UVa 156 - Ananagrams
- UVA 156 - Ananagrams
- UVa 156 - Ananagrams
- UVa 156 - Ananagrams
- UVA 156 Ananagrams
- uva 156 - Ananagrams
- UVa - 156 - Ananagrams
- uva 156 Ananagrams
- UVa 156 - Ananagrams
- UVA - 156 - Ananagrams
- Uva:156 - Ananagrams
- SQLI-LAB 的 实战记录(Less 11 - Less 20)
- servlet实现请求转发和请求重定向的特性与区别
- Linux下控制免驱USB摄像头的信息
- maven开发环境,写第一个HelloWorld
- JS修改CSS的三种方式
- UVA-156 Ananagrams
- Handler机制-----我的理解
- 树莓派GPIO的编号规范
- 【linux c】c语言十进制数转换为十六进制输出_学习笔记_005
- 类的加载与初始化
- 枚举
- spring学习笔记(二)
- 一次更改网络权限
- 【Dongle】【牛腩新闻发布系统】ASP无法识别