字符串的完美度
来源:互联网 发布:手机linux模拟器 编辑:程序博客网 时间:2024/04/30 13:35
我们要给每个字母配一个1-26之间的整数,具体怎么分配由你决定,但不同字母的完美度不同,而一个字符串的完美度等于它里面所有字母的完美度之和,且不在乎字母大小写,也就是说字母F和f的完美度是一样的。现在给定一个字符串,输出它的最大可能的完美度。例如:dad,你可以将26分配给d,25分配给a,这样整个字符串最大可能的完美度为77。函数头部Cint perfect(const char *s);C++int perfect(const string &s);javapublic static int perfect(String s);
/*
1.先统计字符串 并按照使用频率排列下来
2. 算出完美度
*/
#include <stdio.h>
#include <string.h>
int perfect(const char *s)
{
int res = 0;
int a[26] = {0};
int tmp =0;
for(int i = 0; i<strlen(s); i++)
{
switch(s[i]){
case 'a':
case 'A':a[0]=a[0]+1; break;
case 'b':
case 'B': a[1]=a[1]+1; break;
case 'c':
case 'C' :a[2]=a[2]+1; break;
case 'd':
case 'D' :a[3]=a[3]+1; break;
case 'e':
case 'E' :a[4]=a[4]+1; break;
case 'f':
case 'F' :a[5]=a[5]+1; break;
case 'g':
case 'G' :a[6]=a[6]+1; break;
case 'h':
case 'H' :a[7]=a[7]+1; break;
case 'i':
case 'I' :a[8]=a[8]+1; break;
case 'j':
case 'J' :a[9]=a[9]+1; break;
case 'k':
case 'K' :a[10]=a[10]+1; break;
case 'l':
case 'L' :a[11]=a[11]+1; break;
case 'm':
case 'M' :a[12]=a[12]+1; break;
case 'n':
case 'N' :a[13]=a[13]+1; break;
case 'o':
case 'O' :a[14]=a[14]+1; break;
case 'p':
case 'P' :a[15]=a[15]+1; break;
case 'q':
case 'Q' :a[16]=a[16]+1; break;
case 'r':
case 'R' :a[17]=a[17]+1; break;
case 's':
case 'S' :a[18]=a[18]+1; break;
case 't':
case 'T' :a[19]=a[19]+1; break;
case 'u':
case 'U' :a[20]=a[20]+1; break;
case 'v':
case 'V' :a[21]=a[21]+1; break;
case 'w':
case 'W' :a[22]=a[22]+1; break;
case 'x':
case 'X' :a[23]=a[23]+1; break;
case 'y':
case 'Y' :a[24]=a[24]+1; break;
case 'z':
case 'Z' :a[25]=a[25]+1; break;
default:
printf("ERROR!\n");
return 0;
}
}
//sort
for(int i =0 ; i<26; i++)
for(int j = i+1; j< 26;j++)
{
if(a[i]>a[j])
{
tmp = a[i];
a[i]=a[j];
a[j]=tmp;
}
}
//a[0] ...a[25] 123456789
for(int i = 26; i>0&&a[i-1]!=0;i--)
{
res = res +i*a[i-1];
}
//printf("RES %d\n",res);
return res;
}
int main()
{
printf("perfect %d\n",perfect("aaaabc"));
}
- 字符串的完美度
- 字符串的完美度
- 字符串的完美度
- 字符串的完美度
- 字符串的完美度
- 字符串的完美度
- 字符串的完美度
- 字符串的完美度
- 字符串的完美度
- 字符串的完美度
- 字符串的完美度
- 字符串的完美度
- 字符串的完美度总结
- 字符串的完美度算法
- 挑战编程:字符串的完美度
- 在线编程:字符串的完美度
- 编程挑战:字符串的完美度
- 庞果网之字符串的完美度
- andriod音频通信技术
- 成电第二届研究生微波电路设计大赛结束
- HTML5画布与Three.js WebGL缸
- 数据导入HBase最常用的三种方式(一)——put方式
- js笔记的整理
- 字符串的完美度
- JavaScript使用笔记
- 项目拾遗——省市县三级联动
- nyoj 333-mdd的烦恼
- ListView下拉刷新【第三方控件实现】
- 隐藏 标题栏 和 状态栏隐藏(全屏)
- 一个比较简单的c-free问题
- OpenGL ES 纹理映射问答中的领悟
- java的上传问题!