# 从标准输入读取一个整数n,并存储在变量n中 n = int(input()) # 从标准输入读取一个字符串s,并存储在变量s中 s = input() # 计算字符串s的长度,并存储在变量length中 length = len(s) # 初始化变量ans为0,用于存储最终的计算结果 ans = 0 # 计算字符串s中可以完整分割成n个字符长度的子字符串的数量,并存储在变量size中 size = length // n # 遍历每一个可以完整分割的子字符串 for i in range(size): # 初始化一个空字典mp,用于存储当前子字符串中每个字符的出现次数 mp = dict() # 遍历当前子字符串中的每一个字符 for j in range(n): # 计算当前字符在字符串s中的位置p p = j * size + i # 如果当前字符已经在字典mp中存在,则将其出现次数加1 if s[p] in mp: mp[s[p]] += 1 # 如果当前字符在字典mp中不存在,则将其添加到字典中,并设置其出现次数为1 else: mp[s[p]] = 1 # 找到当前子字符串中字符的最大出现次数,并从n中减去这个值,得到x x = n - max(mp.values()) # 将x累加到ans中 ans += x # 打印最终结果ans,end=''确保输出后不换行 print(ans, end='')
对于每个分割开的字符串的相同位置进行字符出现次数统计,将所有字符转化为出现次数最多的那个字符,这样需要的次数最少。
还有两天就比赛了,加油加油加油!
好累啊啊啊啊
0.0分
0 人评分
C二级辅导-进制转换 (C语言代码)浏览:788 |
C语言程序设计教程(第三版)课后习题10.3 (C语言代码)浏览:833 |
C二级辅导-同因查找 (C语言代码)浏览:663 |
printf基础练习2 (C语言代码)浏览:594 |
C语言训练-排序问题<2> (C++代码)浏览:886 |
C语言训练-素数问题 (C语言代码)浏览:998 |
字符串问题 (C语言代码)浏览:1521 |
用筛法求之N内的素数。 (C语言代码)浏览:1260 |
C语言程序设计教程(第三版)课后习题10.4 (C语言代码)浏览:886 |
三角形 (C语言代码)浏览:914 |