{"trustable":true,"prependHtml":"\u003cstyle type\u003d\u0027text/css\u0027\u003e\n .input, .output {\n border: 1px solid #888888;\n }\n .output {\n margin-bottom: 1em;\n position: relative;\n top: -1px;\n }\n .output pre, .input pre {\n background-color: #EFEFEF;\n line-height: 1.25em;\n margin: 0;\n padding: 0.25em;\n }\n \u003c/style\u003e\n \u003clink rel\u003d\"stylesheet\" href\u003d\"//codeforces.org/s/96598/css/problem-statement.css\" type\u003d\"text/css\" /\u003e\u003cscript\u003e window.katexOptions \u003d { disable: true }; \u003c/script\u003e\n\u003cscript type\u003d\"text/x-mathjax-config\"\u003e\n MathJax.Hub.Config({\n tex2jax: {\n inlineMath: [[\u0027$$$\u0027,\u0027$$$\u0027], [\u0027$\u0027,\u0027$\u0027]],\n displayMath: [[\u0027$$$$$$\u0027,\u0027$$$$$$\u0027], [\u0027$$\u0027,\u0027$$\u0027]]\n }\n });\n\u003c/script\u003e\n\u003cscript type\u003d\"text/javascript\" async src\u003d\"https://mathjax.codeforces.org/MathJax.js?config\u003dTeX-AMS_HTML-full\"\u003e\u003c/script\u003e","sections":[{"title":"","value":{"format":"HTML","content":"\u003cp\u003e你有一个大小为$$$n$$$的袋子。你还有$$$m$$$个盒子。第$$$i$$$个盒子的大小是$$$a_i$$$,其中每个$$$a_i$$$都是非负整数的二的幂。\u003c/p\u003e\u003cp\u003e你可以把盒子分成两部分,使它们的大小相等。你的目标是把袋子填满。\u003c/p\u003e\u003cp\u003e例如,如果$$$n \u003d 10$$$和$$$a \u003d [1, 1, 32]$$$,那么你需要把大小为$$$32$$$的盒子分成两部分,每部分大小为$$$16$$$,然后再分割大小为$$$16$$$的盒子。这样你就可以用大小为$$$1$$$、$$$1$$$和$$$8$$$的盒子来填满袋子。\u003c/p\u003e\u003cp\u003e计算填满大小为$$$n$$$的袋子所需的最小分割次数。\u003c/p\u003e"}},{"title":"输入","value":{"format":"HTML","content":"\u003cp\u003e第一行包含一个整数$$$t$$$($$$1 \\le t \\le 1000$$$)— 测试用例的数量。\u003c/p\u003e\u003cp\u003e每个测试用例的第一行包含两个整数$$$n$$$和$$$m$$$($$$1 \\le n \\le 10^{18}, 1 \\le m \\le 10^5$$$)— 袋子的大小和盒子的数量。\u003c/p\u003e\u003cp\u003e每个测试用例的第二行包含$$$m$$$个整数$$$a_1, a_2, \\dots , a_m$$$($$$1 \\le a_i \\le 10^9$$$)— 盒子的大小。保证每个$$$a_i$$$都是二的幂。\u003c/p\u003e\u003cp\u003e同时保证所有测试用例中所有$$$m$$$的总和不超过$$$10^5$$$。\u003c/p\u003e"}},{"title":"输出","value":{"format":"HTML","content":"\u003cp\u003e对于每个测试用例,输出一个整数 — 填满大小为$$$n$$$的袋子所需的最小分割次数(如果不可能,则输出$$$-1$$$)。\u003c/p\u003e"}},{"title":"示例 1","value":{"format":"HTML","content":"\u003ctable class\u003d\u0027vjudge_sample\u0027\u003e\n\u003cthead\u003e\n \u003ctr\u003e\n \u003cth\u003eInput\u003c/th\u003e\n \u003cth\u003eOutput\u003c/th\u003e\n \u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n \u003ctr\u003e\n \u003ctd\u003e\u003cpre\u003e3\n10 3\n1 32 1\n23 4\n16 1 4 1\n20 5\n2 1 16 1 8\n\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e2\n-1\n0\n\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e"}}]}