{"trustable":true,"prependHtml":"\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 async src\u003d\"https://mathjax.codeforces.org/MathJax.js?config\u003dTeX-AMS-MML_HTMLorMML\" type\u003d\"text/javascript\"\u003e\u003c/script\u003e","sections":[{"title":"","value":{"format":"HTML","content":"\u003cdiv class\u003d\"panel_content\"\u003e城市里有 N 座建筑物沿直线排列,编号从 1 到 N。所有建筑物的高度都是不同的,介于 1 和 N 之间。当你站在第一座建筑物前向前看时,你能看到 F 座建筑物;当你站在最后一座建筑物后向后看时,你能看到 B 座建筑物。如果一座建筑物比你和它之间的任何建筑物都高,那么你就能看到这座建筑物。\u003cbr\u003e现在,给定 N、F、B,你的任务是计算所有建筑物排列的方式有多少种。\u003c/div\u003e"}},{"title":"输入","value":{"format":"HTML","content":"输入的第一行是一个整数 T (T\u0026lt;\u003d100000),表示接下来有 T 个测试用例。\u003cbr\u003e接下来的 T 行,每行包含三个整数 N、F、B,描述如上所述 (0\u0026lt;N, F, B\u0026lt;\u003d2000)。"}},{"title":"输出","value":{"format":"HTML","content":"对于每个测试用例,你应该输出排列方式的数量对 1000000007 取模后的结果(1e9+7)。"}},{"title":"示例","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\u003e2\r\n3 2 2\r\n3 2 1\u003c/pre\u003e\u003c/td\u003e\n \u003ctd\u003e\u003cpre\u003e2\r\n1\u003c/pre\u003e\u003c/td\u003e\n \u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e"}}]}