愛奇藝校招 字串價值(python)

2021-09-12 10:53:54 字數 1078 閱讀 2775

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

例如: 字串"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
題意:給乙個字串,他的價值等於每個字母出現的次數的平方和。現可以刪除k個字母,讓你求出刪除k個後的最小價值是多少。

分析:首先統計出每個字元出現的次數,放在乙個列表中,倒序排序。迴圈k次,每次給列表中的最大值減一 。我的**可以將第一次雙層for迴圈改進為乙個for迴圈,有興趣的朋友可以改一下。**如下:

s = list(input())

k = int(input())

s1 = set(s)

num =

for x in s1:

t = 0

for y in s:

if x == y:

t += 1

num.sort(reverse=true)

while k>0:

m = max(num)

for i in range(len(num)):

if num[i] == m:

num[i] -= 1

k -= 1

break

i = 0

res = 0

for i in range(len(num)):

res += num[i] ** 2

print(res)

愛奇藝 校招筆試 2017 9 11

andrew zhang sep 11,2017 工作好閒。參加校招筆試玩玩兒,題目很簡單。題目2 如果乙個數字滿足以下條件,就稱它是奇異數 1 這個數字至少有兩位 2 這個數字的最低兩位是相同的 計算區間 l,r 內的所有奇異數。include using namespace std long l...

青草遊戲 2018愛奇藝校招

題目描述 牛牛和羊羊都很喜歡青草。今天他們決定玩青草遊戲。最初有乙個裝有n份青草的箱子,牛牛和羊羊依次進行,牛牛先開始。在每個回合中,每個玩家必須吃一些箱子中的青草,所吃的青草份數必須是4的x次冪,比如1,4,16,64等等。不能在箱子中吃到有效份數青草的玩家落敗。假定牛牛和羊羊都是按照最佳方法進行...

愛奇藝校招 空中旅行(python)

牛牛有羊羊有了屬於他們自己的飛機。於是他們進行幾次連續的飛行。f i 表示第i次飛行所需的燃油的公升數。飛行只能按照f陣列所描述的順序進行。起初飛機裡有s公升燃油,為了正常飛行,每次飛行前飛機內燃油量應大於等於此處飛行所需要的燃油量。請幫助他們計算在不進行加油的情況下他們能進行的飛行次數。輸入包括兩...