- 博客(4)
- 收藏
- 关注
原创 课程质量建设 算法题 滑动窗口 python 双队列deque
题目描述:辅导课堂在推进质量建设,需要分析每堂直播课的用户报障数量。当连续多个课程的报障数量之和大于一个数s的时候,系统会发出报警。想知道最长连续的没有触发报警的课程数量。输入描述:第一行两个整数 n,s第二行 n 个整数,每个整数表示一次课程报障数量ai输出描述:最长连续的没有触发报警的课程数量用例输入 :3 21 1 3用例输出:2思路:滑动窗口的思想吧,模拟个先进先出个队列,越值了,deque就popleft(),很简单,看代码代码:from collections
2022-04-04 18:55:14
740
原创 子串分值和【第十一届】【省赛】【B组】
题目:思路:反正是按着dp的思路想到的,每个子串和用Counter去算,然后先算第一个字母的,其次算第二个子母的时候只需算它本身子串还有它和前一个字母的子串…算第n个的时候需要算的子串和有[n],[n-1,n],[n-2,n-1,n],…[1,2,3…n],每次算的结果加到ans里即可。代码:from collections import Countern=list(input())ans=0for i in range(len(n)): for j in range(i,-1,-1)
2022-04-02 20:02:51
147
原创 历届真题 重复字符串【第十一届】【决赛】python gcd Counter
题目:思路:假设长度为S的字符串必能拆分成K次字符串,即拆分成K个连续相同子串所需最少次数,也就转换成了让它K个子串的每个位置上变成相同字母所需次数的次数合。因为是连续拆分的,K个子串的长度都必为S//K,且不相对位置的字母与其他字母无关。我们只需用S//K个容器存放每个子串的每个相对应位置的字母,求出相对位置字母变成相同字母所需最少次数合即可(例:将K个子串的第一个字母变成相同字母所需最少修改次数=K-出现最多的第一个字母的数量)代码:import mathfrom collections i
2022-03-31 21:30:33
1052
原创 试题 历届真题 砝码称重 dp动态规划 python
题目:思路:dp,lst存放的是上一次更新的状态,为什么用dict存储答案,感觉也许会更快代码:n=int(input())nums=sorted(list(map(int,input().split())))dic={nums[0]:0}for i in range (1,n): lst=list(dic.keys()) if nums[i] not in dic: dic[nums[i]]=0 for j in lst:
2022-03-31 20:18:25
675
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人