我国"嫦娥六号"月球探测器成功从月球背面带回珍贵土壤样本。科学家需要将采集到的样本分成若干批进行分析。假设一共有 n 个样本,每次只能将当前样本平均分成2份进行递归检测,如果样本数为奇数则先减去1再平分,多出的 1 份单独归档,不再参与后续检测。当只剩1个样本时,检测完成。 请补全下面的程序代码,计算共需要多少轮"平分操作"。
def check(n):
if n == ① :
return 0
else:
if ② == 1:
n = n - 1
return 1 + check( ③ )
# 计算20个样本需要多少轮平分操作
result = check(20)
print(f"20个样本共需要平分{ ④ }轮")