拼多多算法工程师笔试题之分配巧克力

来源:互联网 发布:黎明杀机刷血点软件 编辑:程序博客网 时间:2024/04/29 22:10

问题:

给定n个孩子以及每个孩子需要的巧克力,给定m个巧克力以及巧克力的重量

输出:

最多可以分给几个人

思路:

一块巧克力不能分给多人,多人也不能同分一块巧克力,那么符合条件的就是一块巧克力分给一个人指定最低的重量后巧克力剩余量大于0即可

下面是具体的实现:


#!usr/bin/env python  #encoding:utf-8    '''__Author__:沂水寒城 功能:分配巧克力''' def split_qiaokeli(n, h_list, m, w_list):    h_list = [ int(i) for i in h_list.split(' ') ]    w_list = [ int(i) for i in w_list.split(' ') ]    h_list.sort()    w_list.sort()    num = 0    for h in h_list:        index = 0        for w in w_list:            index += 1            if h <= w:                num += 1                w_list = w_list[index:]                break    return num n = raw_input()h_list = raw_input()m = raw_input()w_list = raw_input()print split_qiaokeli(n, h_list, m, w_list)


结果如下:


51 1 1 2 423 1231 2 322 32


原创粉丝点击