using System; using System.Collections.Generic; using System.Linq; class Program { static string InputPattern = "InputX"; static List GetInputList() { var WillReturn = new List(); if (InputPattern == "Input1") { WillReturn.Add("16"); WillReturn.Add("3"); WillReturn.Add("10 5 7"); //2 //幅16の箱には全部は入れられないが最大2個までは入れられる。 } else if (InputPattern == "Input2") { WillReturn.Add("100"); WillReturn.Add("10"); WillReturn.Add("14 85 77 26 50 45 66 79 10 3"); //5 //14,26,45,10,3 の組み合わせで最大5個になる //(どう組み合わせても6個以上は入らない) } else { string wkStr; while ((wkStr = Console.ReadLine()) != null) WillReturn.Add(wkStr); } return WillReturn; } static void Main() { List InputList = GetInputList(); int L = int.Parse(InputList[0]); int[] WidthArr = InputList[2].Split(' ').Select(X => int.Parse(X)).ToArray(); Array.Sort(WidthArr); int AnswerCnt = 0; int WidthSum = 0; for (int I = 0; I <= WidthArr.GetUpperBound(0); I++) { if (WidthSum + WidthArr[I] <= L) { WidthSum += WidthArr[I]; AnswerCnt++; } else break; } Console.WriteLine(AnswerCnt); } }