51nod 完美字串

2021-07-24 14:50:59 字數 720 閱讀 8744

輸入

輸入乙個字串s(s的長度 <= 10000),s中沒有除字母外的其他字元。

輸出

由你將1-26分配給不同的字母,使得字串s的完美度最大,輸出這個完美度。

輸入示例

dad

輸出示例

77

這個題就是首先說不分大小寫,所以就是先來個大寫字母轉化為小寫字母,在轉化的過程中就是新開乙個陣列,用於存這個字母出現過多少次,然後用sort對這個陣列從小到大分類,然後最大的乘以最大的數,接著依次遞減。

#include#include#include#include#includeusing namespace std;

int main()

; int sum=0;

cin>>s;

int l1=strlen(s);

for(int i=0;i='a') s[i]=s[i]+32;

a[s[i]-'a']++;

} sort(a,a+27);

for(int i=26;i>=0;i--)

printf("%d\n",sum);

return 0;

}

51Nod 完美字串

約翰認為字串的完美度等於它裡面所有字母的完美度之和。每個字母的完美度可以由你來分配,不同字母的完美度不同,分別對應乙個1 26之間的整數。約翰不在乎字母大小寫。也就是說字母f和f 的完美度相同。給定乙個字串,輸出它的最大可能的完美度。例如 dad,你可以將26分配給d,25分配給a,這樣整個字串完美...

51nod 貪心入門之一 完美字串

約翰認為字串的完美度等於它裡面所有字母的完美度之和。每個字母的完美度可以由你來分配,不同字母的完美度不同,分別對應乙個1 26之間的整數。約翰不在乎字母大小寫。也就是說字母f和f 的完美度相同。給定乙個字串,輸出它的最大可能的完美度。例如 dad,你可以將26分配給d,25分配給a,這樣整個字串完美...

51nod1182 完美字串

題意 給定乙個字串,然後可以隨意分配每個字元1 26的完美度,問最大完美度是多少。思路 貪心,開始太疏忽,沒有想到貪心,因為26肯定是分配給出現次數最多的那個,其他依次遞減。我用乙個陣列儲存每個字元出現的次數,然後在從大到小排序就行。include include include includeus...