uva 644 Immediate Decodability(字符串比对)
来源:互联网 发布:电动剃须刀,知乎 编辑:程序博客网 时间:2024/06/07 09:34
题意是找出编码中是否存在一个编码是另一个编码的前缀。
利用排序的性质,排在前面的肯定是短的,即为前缀。
代码:
#include <stdio.h>#include <stdlib.h>#include <string.h>char str[1000][100];int min(int a, int b){ return a > b ? b : a;}int cmp(void const *va, void const *vb){ char *a = (char*)va; char *b = (char*)vb; return strcmp(a, b);}bool is_decode(int n){ int i, j; for (i = 1; i < n; i++) { int m = min(strlen(str[i - 1]), strlen(str[i])); for (j = 0; j < m; j++) { if (str[i - 1][j] != str[i][j]) break; } if (j == m) return false; } return true;}int main(){#ifdef LOCAL freopen("in.txt", "r", stdin);#endif // LOCAL int ncase = 1; while (scanf("%s", str[0]) != EOF) { int i = 1; while (scanf("%s", str[i]) && str[i][0] != '9') i++; qsort(str, i, sizeof(str[0]), cmp); if (is_decode(i)) printf("Set %d is immediately decodable\n", ncase++); else printf("Set %d is not immediately decodable\n", ncase++); } return 0;}
0 0
- uva 644 Immediate Decodability(字符串比对)
- UVA 644 - Immediate Decodability(字符串)
- uva 644 Immediate Decodability(字符串处理)
- Immediate Decodability - UVa 644 字符串处理
- 字符串训练 ----- UVA 644题目 Immediate Decodability
- uva 644 Immediate Decodability
- UVa 644 - Immediate Decodability
- UVa 644 - Immediate Decodability
- uva-644 - Immediate Decodability
- uva 644 Immediate Decodability
- UVA 644 Immediate Decodability
- UVA 644 Immediate Decodability
- UVa 644 - Immediate Decodability
- UVa 644 - Immediate Decodability
- UVA 644 Immediate Decodability
- UVa - 644 - Immediate Decodability
- uva 644 - Immediate Decodability
- UVA 644 Immediate Decodability
- 一个MVC例子
- LeetCode | Reorder List
- 云中间层服务 - 区域感知负载均衡器 Ribbon
- 捉虫经历:weblogic 下调用 getServletContext() 方法报错
- 程序员长期保持身心健康的几点建议
- uva 644 Immediate Decodability(字符串比对)
- Mysql基础篇之视图
- 1、最大公约数&最小公倍数探讨
- maven 编译 spark1.0.0
- hibernate 映射解析——七种映射关系
- 容器set
- 从wordcount 开始 mapreduce (C++\hadoop streaming模式)
- WebQQ hash值获取 C#方法 2014/06/20
- Android启动过程深入解析