UVA10602

原创 2013年12月05日 20:44:12

题意:输入一些字符串,要求所需按键的次数最小

思路:先将所有字符串排序,然后再将前一个与后一个比较,找出要按键的次数,然后进行累加,刚开始WA是因为写成,计算两个字符串不同的字母,实际是要在出现第一个字符出现不同后,后面的字符全都要用按键输入了。

#include <stdio.h>
#include <string.h>
#include <algorithm>
#define N 105

using namespace std;

char s[N][N], str[N][N], ans[N];

int cmp(const void *a, const void *b) {
    return strcmp((char *)a, (char *)b);
}

int main() {
    int cas;
    scanf("%d", &cas);
    while (cas--) {
        int n, num = 0;
        scanf("%d", &n);
        for (int i = 0; i < n; i++) 
            scanf("%s", s[i]);
        
        qsort(s, n, sizeof(s[0]), cmp); 
        num = strlen(s[0]);
        int i, k;
        for (i = 1; i < n; i++) {
                for (k = 0; k < strlen(s[i]); k++) {
                     if (s[i][k] != s[i - 1][k])  
                        break; 
                }      
                num += strlen(s[i]) - k;
        }        
        printf("%d\n", num);
        for (int i = 0; i < n; i++) 
                printf("%s\n", s[i]); 
    }
    return 0;
}


uva10602

题意: 输入一系列的单词,求出输入字母最少的次数。 例如样例数据1 首先输入this要用4次输入。重复this的到this删除s,的到thi输入n的到thin,此时共输入5次,重复thin,在输...
  • zjhcdns
  • zjhcdns
  • 2015年04月27日 18:17
  • 106

uva10602 - Editor Nottoobad

大水题。。。 比较前缀,,,,, 代码如下: #include #include #define M 105 char st[M][M]; int path[M], fl[M]; int g...
  • shankeliupo
  • shankeliupo
  • 2013年03月31日 11:19
  • 524

uva10602 Editor Nottobad

题意:打印一些字符串,要记录输入字母个数最少,删除和复制都是不记录次数的。 解法:贪心算法。由于相同的前缀相同的字符时不用重复输入的,所以先将所有的字符串按字典顺序排序,sum计算所有字母的总和,减...
  • u010065754
  • u010065754
  • 2013年04月13日 02:01
  • 387

uva10602 Editor Nottoobad

出乎预料的1a了。 就是贪心,
  • u011589125
  • u011589125
  • 2014年09月27日 15:02
  • 191

[贪心]UVA10602 Editor Nottoobad

题意:一种编辑器只能通过声音做到两种操作-“repeat the last word”, “delete the last symbol”,其他的都必须自己手动输入,问输入一些单词,最少需要手写输入多...
  • u011194165
  • u011194165
  • 2014年03月26日 09:07
  • 948

uva10602 - Editor Nottoobad

题意: 一台声控机子,有两条命令:— “repeat the last word”, “delete the last symbol”.给你一些单词,让你用合理运用这两条命令,最少的敲击键盘打出这些...
  • conatic
  • conatic
  • 2016年03月05日 12:22
  • 133
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:UVA10602
举报原因:
原因补充:

(最多只允许输入30个字)