結果
| 問題 | No.5 数字のブロック |
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2026-03-24 17:56:08 |
| 言語 | Python3 (3.14.3 + numpy 2.4.2 + scipy 1.17.0) |
| 結果 |
AC
|
| 実行時間 | 112 ms / 5,000 ms |
| コード長 | 1,325 bytes |
| 記録 | |
| コンパイル時間 | 420 ms |
| コンパイル使用メモリ | 20,700 KB |
| 実行使用メモリ | 15,360 KB |
| 最終ジャッジ日時 | 2026-03-24 17:56:13 |
| 合計ジャッジ時間 | 4,947 ms |
|
ジャッジサーバーID (参考情報) |
judge3_0 / judge1_0 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| other | AC * 34 |
ソースコード
# #---問題文---
# Ellenは数字のブロックで遊ぼうとしている。
# 数字が書かれているブロックはそれぞれ高さ1で幅はWiである。
# (同じ幅のブロックが複数存在することがある。)
# それらのブロックを高さ1,幅Lの箱の中に入れる。
# Ellenは大きな箱にどれだけブロックがたくさん入るか気になったが。
# 組み合わせがたくさんあって大変なことに気づいて、すぐに夜になってしまいそうである。
# あなたは、代わりに大きな箱に最大何個のブロックが入るかを求めてください。
#---出力条件---
#求めた数値を返してください。末尾に改行をつけてください。
#箱の幅Lを標準入力する。
L = int(input())
#ブロックの総数Nを標準入力する。
N = int(input())
#Wをリストとして埋め込む。
W = list(map(int, input().split()))
#ソート関数を使用して小さい順に並べる。
W.sort()
#合計の幅をtotal_widthとする。
total_width = 0
#また個数カウンタcountとする。
count = 0
#並び替えた後を1つずつ見ていく
for width in W:
if total_width + width <= L:
total_width = total_width + width
count = count + 1
else:
break
print(count)