python算法与数据结构朋友圈与水杯实验题分析实例:环球快播报
目录
算法与数据结构实验题-朋友圈实验任务数据输入数据输出输入示例输出示例代码实现效果展示算法与数据结构实验题-水杯实验任务数据输入数据输出输入示例输出示例代码实现效果展示算法与数据结构实验题-朋友圈
实验任务
朋友圈是由若干个人组成的集体,已知现在有n个人(1到n),然后给你m个关系x y,表示x和y是朋友,假设朋友的朋友也是朋友,求这n个人中最大的朋友圈人数。
数据输入
输入第一行为一个正整数n,m。
接下来有m行,每行有两个正整数 x 和 y ,表示 x 和 y 是朋友
(相关资料图)
60%的数据 1<=n,m<=100.
100%的数据1<=n<=100000.
数据输出
输出n个人中最大的朋友圈人数。
输入示例
3 2
1 2
2 3
输出示例
3
代码实现
rel=int (input().split()[1]) my_list=[] ne=0 while rel: rel-=1 flag=0 my_set=set() my_cont=[int (n) for n in input().split()] for n in range(len(my_list)): if my_cont[0] in my_list[n]: my_list[n].add(my_cont[1]) flag=1 ne=n continue if (my_cont[1] in my_list[n]) and flag==0: my_list[n].add(my_cont[0]) flag = 1 break elif (my_cont[1] in my_list[n]) and flag==1: my_list[n]=my_list[n].union(my_list[ne]) my_list.remove(my_list[ne]) if flag==0: my_set.add(my_cont[0]) my_set.add(my_cont[1]) my_list.append(my_set) ans=0 for n in my_list: ans=max(ans,len(n)) print(ans)
tips:union返回一个新的集合,需要赋值
效果展示
算法与数据结构实验题-水杯
实验任务
有n个水杯叠放在一起
从上到下,编号由1开始一直到n,容量ai不一定满足也依次增大的关系,如果i号杯子存的水超过了它的容量,则会像i+1号水杯流,以此类推
现在给你两个操作
操作一: 1 x y 给x号杯子加y容量的水
操作二: 2 x 查询x杯子里有多少水。
数据输入
输入第一行为一个正整数n
接下来n个元素,表示第i个水杯的容量
接着输入操作的个数q
接下来q行操作。
60%的数据 1<=n<=100,1<=q<=100,1<=ai,y<=100.
100%的数据1<=n<=100000,1<=q<=100000,1<=ai,y<=1000000000.
数据输出
对于每个操作二,输出对应的值。
输入示例
2
5 10
6
1 1 4
2 1
1 2 5
1 1 4
2 1
2 2
输出示例
4
5
8
代码实现
def action(x,n): while n>0 and x<=num: if my_cup[x]>=n: my_cup[x]-=n n=0 else: n-=my_cup[x] my_cup[x] = 0 x+=1 num=int (input()) my_cup=[int (n) for n in input().split()] old=my_cup.copy() act=int (input()) while act: act-=1 cont=[int (n) for n in input().split()] if cont[0]==1: action(cont[1]-1,cont[2]) if cont[0]==2: print(old[cont[1]-1]-my_cup[cont[1]-1])
注释:这里的old列表需要用到copy函数进行浅拷贝操作(没有出现嵌套所以不同考虑深拷贝),若是直接赋值则会导致my_cup改变时old也跟着改变。本代码输出为实时输出
效果展示
到此这篇关于python算法与数据结构实验题分析实例的文章就介绍到这了,更多相关python算法与数据结构内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
X 关闭
X 关闭
- 15G资费不大降!三大运营商谁提供的5G网速最快?中国信通院给出答案
- 2联想拯救者Y70发布最新预告:售价2970元起 迄今最便宜的骁龙8+旗舰
- 3亚马逊开始大规模推广掌纹支付技术 顾客可使用“挥手付”结账
- 4现代和起亚上半年出口20万辆新能源汽车同比增长30.6%
- 5如何让居民5分钟使用到各种设施?沙特“线性城市”来了
- 6AMD实现连续8个季度的增长 季度营收首次突破60亿美元利润更是翻倍
- 7转转集团发布2022年二季度手机行情报告:二手市场“飘香”
- 8充电宝100Wh等于多少毫安?铁路旅客禁止、限制携带和托运物品目录
- 9好消息!京东与腾讯续签三年战略合作协议 加强技术创新与供应链服务
- 10名创优品拟通过香港IPO全球发售4100万股 全球发售所得款项有什么用处?