没有合适的资源?快使用搜索试试~ 我知道了~
15个梨分给5个人的组合算法
需积分: 22 1 下载量 156 浏览量
2016-03-16
18:31:02
上传
评论
收藏 3KB TXT 举报
温馨提示
试读
6页
把15个梨分给5个人,每人最少2个,最多5个的组合算法,返回一个数组 - (NSArray *)createRandomArrayForCount:(NSInteger)aCount min:(NSInteger)aMin max:(NSInteger)aMax people:(NSInteger)aPeople
资源推荐
资源详情
资源评论
- (NSArray *)createRandomArrayForCount:(NSInteger)aCount min:(NSInteger)aMin max:(NSInteger)aMax people:(NSInteger)aPeople
{
if (aMin > aCount * 1.0f / aPeople) return nil;
int m = 0;
NSArray *array = nil;
while (YES)
{
NSMutableArray *resultArray = [NSMutableArray array];
//返回一个组合数组:把count个梨分给people个人,每人最少min,最多max个
NSInteger count = aCount;
NSInteger min = aMin;
NSInteger max = aMax;
NSInteger people = aPeople;
{
if (aMin > aCount * 1.0f / aPeople) return nil;
int m = 0;
NSArray *array = nil;
while (YES)
{
NSMutableArray *resultArray = [NSMutableArray array];
//返回一个组合数组:把count个梨分给people个人,每人最少min,最多max个
NSInteger count = aCount;
NSInteger min = aMin;
NSInteger max = aMax;
NSInteger people = aPeople;
NSInteger beLeft = (count - people * (min - 1)) - 1;
NSMutableArray *randomArray = [NSMutableArray array];
for (int i = 0; i < beLeft; i++)
{
[randomArray addObject:@(i)];
}
NSInteger pre = 0;
for (int i = 0; i < people - 1; i++)
{
int randomIndex = arc4random() % randomArray.count;
NSNumber *num = randomArray[randomIndex];
[resultArray addObject:num];
剩余5页未读,继续阅读
资源评论
danny35
- 粉丝: 13
- 资源: 35
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功