字串價值

2021-09-16 23:15:54 字數 885 閱讀 1270

題目描述

有一種有趣的字串價值計算方式:統計字串中每種字元出現的次數,然後求所有字元次數的平方和作為字串的價值

例如: 字串"abacaba",裡面包括4個'a',2個'b',1個'c',於是這個字串的價值為4 * 4 + 2 * 2 + 1 * 1 = 21

牛牛有乙個字串s,並且允許你從s中移除最多k個字元,你的目標是讓得到的字串的價值最小。

輸入描述:

輸入包括兩行,第一行乙個字串s,字串s的長度length(1 ≤ length ≤ 50),其中只包含小寫字母('a'-'z')。 第二行包含乙個整數k(0 ≤ k ≤ length),即允許移除的字元個數。

輸出描述:

輸出乙個整數,表示得到的最小價值

示例1輸入

aba 1

輸出n^2是曲線形增長。

要使價值最小,肯定要把每個高的n值盡可能的降低,而不是單獨只降低乙個。

比如 2 * 2 + 2 * 2,只能降低2次

1 * 1 + 1 * 1 <= 2 * 2 + 0 * 0。

每次只降低最大的,用set存資料會好點,因為會頻繁排序。

不過陣列只有常數26長,重複排序的效能耗費不大。

#include#include#includeusing namespace std;

int main()

; for(int i = 0; i < str.size(); i++)

for(int i = 0; i < n; i++)

int ans = 0;

for(int i = 0; i < 26; i++)

cout << ans << endl;

return 0;

}

字串價值

牛客網2018校招真題 題目描述 有一種有趣的字串價值計算方式 統計字串中每種字元出現的次數,然後求所有字元次數的平方和作為字串的價值 例如 字串 abacaba 裡面包括4個 a 2個 b 1個 c 於是這個字串的價值為4 4 2 2 1 1 21 牛牛有乙個字串s,並且允許你從s中移除最多k個字...

字串價值

有一種有趣的字串價值計算方式 統計字串中每種字元出現的次數,然後求所有字元次數的平方和作為字串的價值 例如 字串 abacaba 裡面包括4個 a 2個 b 1個 c 於是這個字串的價值為4 4 2 2 1 1 21 牛牛有乙個字串s,並且允許你從s中移除最多k個字元,你的目標是讓得到的字串的價值最...

字串價值( 0 )

有一種有趣的字串價值計算方式 統計字串中每種字元出現的次數,然後求所有字元次數的平方和作為字串的價值 例如 字串 abacaba 裡面包括4個 a 2個 b 1個 c 於是這個字串的價值為4 4 2 2 1 1 21 牛牛有乙個字串s,並且允許你從s中移除最多k個字元,你的目標是讓得到的字串的價值最...