結果

問題 No.5 数字のブロック
ユーザー takahito_7
提出日時 2021-04-08 17:48:13
言語 Python3
(3.13.1 + numpy 2.2.1 + scipy 1.14.1)
結果
RE  
実行時間 -
コード長 1,380 bytes
コンパイル時間 186 ms
コンパイル使用メモリ 12,672 KB
実行使用メモリ 12,032 KB
最終ジャッジ日時 2024-06-23 20:52:13
合計ジャッジ時間 2,855 ms
ジャッジサーバーID
(参考情報)
judge1 / judge5
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other RE * 34
権限があれば一括ダウンロードができます

ソースコード

diff #

#coding:utf-8
import sys
import argparse

def main(args):
    space = args.l_box_width
    m_box_w = sorted(args.m_box_width)
    assert len(m_box_w) == args.num_m_box, '入力した幅の数[{0}], 入力値[{1}]'.format(len(m_box_w), args.num_m_box)
    count = cal_space(space, m_box_w)

    print("大きい箱の幅:", args.l_box_width)
    print("小さい箱の数:",len(m_box_w))
    print("小さい箱の幅:",m_box_w)
    print("入る箱の数:",count)

def cal_space(space, m_box_w):
    ret = 0
    for w in m_box_w:
        space -= w
        if space < 0:
            break
        ret += 1
    return ret 

if __name__ == "__main__":
    parser = argparse.ArgumentParser()
    parser.add_argument("--l_box_width", default=15, type=int)
    parser.add_argument("--num_m_box", default=6, type=int)
    parser.add_argument("--m_box_width", type=int, nargs='+')
    args = parser.parse_args()
    main(args)

# 実行例
# python num_5_block_of_number.py --l_box_width 15 --num_m_box 6 --m_box_width 1 1 2 3 4 5

# 出力結果↓

# 大きい箱の幅: 15
# 小さい箱の数: 6
# 小さい箱の幅: [1, 1, 2, 3, 4, 5]
# 入る箱の数: 5


# 失敗例
# python num_5_block_of_number.py --l_box_width 15 --num_m_box 6 --m_box_width 1 1 2 3 4

# 出力結果↓
# AssertionError: 入力した幅の数[5], 入力値[6]
0