#输入数据
n=int(input())
Xli=list(map(int,input().split()))
Yli=list(map(int,input().split()))
Zli=list(map(int,input().split()))#分别计算X-Y-Z/Y-Z-X/Z-X-Y并排序
newXli =sorted([Xli[i]- Yli[i]- Zli[i]for i inrange(n)],reverse=True)
newYli =sorted([Yli[i]- Xli[i]- Zli[i]for i inrange(n)],reverse=True)
newZli =sorted([Zli[i]- Xli[i]- Yli[i]for i inrange(n)],reverse=True)
cnt=-1#初始化每国士兵数量
x=y=z=0#统计事件for i inrange(n):x+=newXli[i]y+=newYli[i]z+=newZli[i]if x>0or y>0or z>0:cnt=max(cnt,i+1)#输出结果if cnt!=1:print(cnt)else:print(-1)
2.填充
代码
s =input()
n =len(s)
l =['00','11','0?','1?','?0','?1','??']
cnt =0
i =0while i < n:if s[i:i+2]in l:# 在列表的元素都个数加一然后越过已判断子串cnt+=1i+=2else:i+=1print(cnt)
回溯算法:递归函数里面嵌套着for循环 给定两个整数 n 和 k,返回 1 … n 中所有可能的 k 个数的组合。 示例: 输入: n 4, k 2 输出: [ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4], ]
包含组合问题和组合问题的剪枝优化
class solution:def combine(se…