51Nod 1182 完美字符串
Input示例
dad
Output示例
77
#include "bits/stdc++.h" using namespace std; #define LL long long #define INF 0x3f3f3f3f3f #define PI acos(-1) #define N 10010 #define MOD 10 using namespace std; char str[N]; map<char,int> m; vector<int> v; int main() { int n,t; while(~scanf("%s",str)){ m.clear(); v.clear(); int len=strlen(str); for(int i=0;i<len;i++){ m[str[i]]++; } int ans=0,k=26; for(__typeof(m.begin())it=m.begin();it!=m.end();it++){ v.push_back(it->second); } sort(v.begin(),v.end(),greater<int>()); for(__typeof(v.begin())it=v.begin();it!=v.end();it++){ ans+=(k--)*(*it); } printf("%d\n",ans); } return 0; }