CF2111B.Fibonacci Cubes

传统题 时间 2000 ms 内存 256 MiB 5 尝试 1 已通过 1 标签

Fibonacci Cubes

题目描述

nn 个斐波那契立方体,其中第 ii 个立方体的边长等于 fif_i,这里 fif_i 是第 ii 个斐波那契数。

在这个问题中,斐波那契数的定义如下:

  • f1=1f_{1} = 1
  • f2=2f_{2} = 2
  • fi=fi1+fi2f_{i} = f_{i - 1} + f_{i - 2} (当 i>2i > 2 时)

还有 mm 个空盒子,其中第 ii 个盒子的宽度为 wiw_i,长度为 lil_i,高度为 hih_i

对于这 mm 个盒子中的每一个,你需要判断是否所有的立方体都能放进这个盒子中。放置立方体必须遵循以下规则:

  • 立方体只能堆叠在盒子中,并且立方体的边必须与盒子的边平行;
  • 每个立方体必须放在盒子的底部,或者放在其他立方体的顶部,并且放置后该立方体下方空间被完全填满(不能悬空);
  • 较大的立方体不能放在较小的立方体顶部。

输入格式

输入包含多个测试用例。第一行包含一个整数 tt1t1031 \le t \le 10^{3})—— 表示测试用例的数量。接下来是各个测试用例的描述。

每个测试用例的第一行包含两个整数 nnmm2n102 \le n \le 101m21051 \le m \le 2 \cdot 10^{5})—— 分别表示立方体的数量和空盒子的数量。

每个测试用例接下来的 mm 行,每行包含 33 个整数 wiw_i, lil_i, hih_i ( 1wi,li,hi1501 \le w_i, l_i, h_i \le 150 ) —— 表示第 ii 个盒子的尺寸(宽、长、高)。

输入额外约束:

  • 所有测试用例的 mm 的总和不超过 21052 \cdot 10^{5}

输出格式

对于每个测试用例,输出一个长度为 mm 的字符串:如果所有的方块( nn 个)都能装入第 ii 个盒子,则该字符串的第 ii 个字符为 1;否则第 ii 个字符为 0

说明/提示

在第一个测试用例中,只有一个盒子是合适的。立方体可以按如下方式放入其中:

翻译由 DeepSeek R1 完成。

样例

2
5 4
3 1 2
10 10 10
9 8 13
14 7 20
2 6
3 3 3
1 2 1
2 1 2
3 2 2
2 3 1
3 2 4
0010
100101

在线编程 IDE

建议全屏模式获得最佳体验