[牛客网]字符串价值

Posted PrConstantin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[牛客网]字符串价值相关的知识,希望对你有一定的参考价值。

[编程题]字符串价值

热度指数:7时间限制:1秒空间限制:32768K

有一种有趣的字符串价值计算方式:统计字符串中每种字符出现的次数,然后求所有字符次数的平方和作为字符串的价值
例如: 字符串”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
输出
2

let ans = (str,num)=>
    let str_ = ,ans_arr = [],ret=0
    for(let i=0;i<str.length;i++)
        if(str[i] in str_)
            str_[str[i]]++    
        else
            str_[str[i]]=1
        
    
    for(let char_ in str_)
        ans_arr.push(str_[char_])
    
    for(let i=0;i<parseInt(num);i++)
        let max_num = 0,max_index = 0
        for(let i=0;i<ans_arr.length;i++)
            if(ans_arr[i]>=max_num)
                max_num = ans_arr[i]
                max_index = i
            
        
        ans_arr[max_index]--
       
    for(let i=0;i<ans_arr.length;i++)
        ret+= ans_arr[i]*ans_arr[i]
       
    return ret


// console.log(ans('abaccd','3'))
console.log(ans('wersrsresesrsesrawsdsw','11'))

以上是关于[牛客网]字符串价值的主要内容,如果未能解决你的问题,请参考以下文章

仿牛客网论坛项目

牛客网-年终奖

Python牛客网刷题-Day1

字符串转整形(牛客网+LeetCode)详解

字符串转整形(牛客网+LeetCode)详解

前端刷题 —— 牛客网前端题库60道详解