与多层次营销相关的挑战。
一位同伴想要获得奖励。因此,它吸引了N投资者(N>=1),每个第i个投资者都进行了投资x[i]。当总和超过阈值时x[0]+x[1]+...+x[N-1] >= T,可以奖励同伴。但仅在满足以下条件时:
- 最低投资额应大于
M(M<=N) - 对于至少一个整数
k,其中k>=M和k<=N,任何k投资者必须至少投资T/k每个;
给定N, x[], T, M您应该确定是否生成对等方的奖励(布尔结果,“是”或“否”)。最短的代码获胜。
例子:
N=5; M=3; T=10000,为了产生对等方的奖励,必须满足以下条件之一:
- 任何3家公司各投资至少3334
- 任何4家公司各投资至少2500
- 所有这5家公司各投资了至少2000
N=6; M=2; T=5000:
- 任意2家各投资至少2500
- 任何3家公司各投资至少1667美元
- 任何4家公司各投资至少1250美元
- 任意5名至少投资1000美元
- 所有6家公司各投资了至少834美元
广义的:对于任何k,其中k>=M和k<=N:
- 任何
k的N投资者投入至少T/k每
测试用例:
格式:
N, x[], T, M -> correct answer
6, [999, 999, 59, 0, 0, 0], 180, 3 -> 0
6, [0, 60, 0, 60, 60, 0], 180, 3 -> 1
6, [179, 89, 59, 44, 35, 29], 180, 3 -> 0
6, [179, 89, 59, 44, 35, 30], 180, 3 -> 1
6, [179, 89, 59, 44, 36, 29], 180, 3 -> 1
6, [179, 90, 59, 44, 35, 29], 180, 3 -> 0
6, [30, 30, 30, 30, 29, 30], 180, 3 -> 0
6, [30, 30, 30, 30, 30, 30], 180, 3 -> 1
true和真值false?
len(x)就会少于写作的时间N。这样做是因为对于xC中的动态分配数组没有直接len(x)函数-因此您可以始终将length称为N。为方便起见,您可以将所有输入数据N, x[], T, M视为某些外部定义的常数或某些内置的语言。