用python3编写以下题目 题目描述 一个XX产品行销总公司,只有一个boss,其有若干一级分销,一级分销又有若干二级分销,每个分销只有唯一的上级分销. 规定,每个月,下级分销需要将自己的总收入 (自己的+下级上交的) 每满100元上交15元给自己的上级. 现给出一组分销的关系,和每个分销的收入,请找出boss并计算出这个boss的收入。 比如: 收入100元上交15元; 收入199元(99元不够100)上交15元; 收入200元,上交30元。
时间: 2024-04-09 14:33:27 浏览: 74
你可以使用字典来表示分销的关系,并使用递归的方式计算每个分销的总收入。以下是一个可能的实现:
```python
def calculate_income(distributions, distribution_id):
if distribution_id not in distributions:
return 0
else:
income = distributions[distribution_id]
total_income = income
if distribution_id in distributions:
total_income += calculate_income(distributions, distributions[distribution_id])
return total_income
distributions = {
"A": "B",
"B": "C",
"C": "D"
}
incomes = {
"A": 100,
"B": 199,
"C": 200
}
boss = "D"
total_income = calculate_income(incomes, boss)
print("boss的收入为:{}元".format(total_income))
```
在上述代码中,`distributions`字典表示分销的关系,其中键表示下级分销,值表示上级分销。`incomes`字典表示每个分销的收入,其中键表示分销ID,值表示收入金额。通过调用`calculate_income`函数,可以计算出boss的总收入。在这个例子中,boss的ID是"D",其收入为100元。运行程序后,输出结果为:boss的收入为:345元。
阅读全文