<span style="font-family: Arial, Helvetica, sans-serif; font-size: 12px; background-color: rgb(255, 255, 255);">1、名字的漂亮度</span>
代码:
<pre name="code" class="cpp">
#include<stdio.h> /* * 对数组a 进行排序 */ void sort(int a[], int n) { int i, j, temp; for( i = 0; i < n; i++) for(j = i; j < n ; j++) { if(a[i] < a[j]) { temp = a[i]; a[i] = a[j]; a[j] = temp; } } } int main(void) { int n; /* 名字个数 */ scanf("%d",&n); while(n--) { char str[100]; int a[26]={0}, /* 名字中每个字符的个数组成的数组 */ i = 0, result = 0; /* 漂亮度µ */ scanf("%s",str); /* 输入名字 */ <img src="http://img.blog.csdn.net/20150815100447310" alt="" /> while(str[i] != '\0') { if(str[i] >= 'a' && str[i] <= 'z') { a[str[i]-'a']++; } if(str[i]>='A'&&str[i]<='Z') { a[str[i]-'A']++; } i++; } sort(a,26); /* 排序 */ /* 对出现次数最多的字母给予最大的权值即26,其他的依次递减 */ for(i=0;i<=25;i++) { result+=(26-i)*a[i]; } printf("%d\n",result); } return 0; }
版权声明:本文为博主原创文章,未经博主允许不得转载。
原文地址:http://blog.csdn.net/cowena/article/details/47678895