博主头像
HailinCode

Backend Engineer

默认分类

最优分组

问题描述小蓝开了一家宠物店,最近有一种 X 病毒在动物之间进行传染,小蓝为了以防万一打算购买测试剂对自己的宠物进行病毒感染测试。为了减少使用的测试剂数目,小蓝想到了一个好方法:将 N 个宠物平均分为若干组,使得每组恰好有 K 只宠物,这样对同一组的宠物进行采样并混合后用一个试剂进行检测,如果测试结果为阴性则说明组内宠物都未感染 X 病毒;如果是阳性的话则需要对组内所有 K 只宠物单独检测,需要再消

算法

商人随从过河问题

商人们怎样安全过河问题(智力游戏)随从们密约,在河的任一岸,一旦随从的人数比商人多,就杀人越货。乘船渡河的方案由商人决定。商人们怎样才能安全过河?已知条件3名商人3名随从小船至多可载2人两岸均需满足:随从人数 ≤ 商人人数(若某岸商人人数为0,则随从人数可任意)问题分析这是一个多步决策过程:决策:每一步(此岸到彼岸或彼岸到此岸)船上的人员。要求:在安全的前提下(两岸的随从数不比商人多),经有限步使

算法

分巧克力

蓝桥杯2017-省AB-分巧克力N, K = map(int, input().split()) c = [] for _ in range(N): H, W = map(int, input().split()) c.append((H, W)) def can_cut(mid): # 检查边长为 mid 时,能不能切出至少 K 块 total = 0

算法

子集 / 全排列

子集子集 Python 算法nums = list(map(int, input().split())) n = len(nums) res = [] def dfs(start, path): res.append(path.copy()) for i in range(start, n): path.append(i) dfs(i + 1,