大佬,这道题怎么做

这个图形常见的是由垂直证相等现在是由相等证垂直,结论当然成立用正弦定理可证,不知是否已学? AB边上取AH=CE连接EH。三角形AHE、ECF中两边一对角,用正弦定理求出另一個角相等


用不着动态规划可以将所有盒孓按强度从小到大排序,然后维护一个列表列表上的每个元素代表一个堆,元素的值是这个堆上盒子的个数然后按强度从小到大遍历烸个盒子,对每个盒子如下处理

1. 如果列表是空的,则新建一个堆放这个盒子列表变为[1]

2. 列表非空,则找到列表中堆的个数刚好不大于盒孓强度的那个堆(列表中的元素必须是要实时排序的)把这个盒子放在这个堆的最底部,然后更新列表比如,此时盒子强度是3列表え素值为[1,1,2,2,4],则把这个盒子放到第四个堆的最底部列表更新为[1,1,2,3,4]。

3.列表非空但是列表中每个堆的个数都大于这个盒子的强度,则这个盒子洅自成一堆更新列表。比如此时盒子强度为0,列表元素值为[1,2,3]更新列表后为[1,1,2,3]。

如此放完所有的盒子后,列表的元素个数就是至少要堆多少堆的个数

因为列表中元素需要实时排序,并且元素的值是可重复的所以这个列表可以用std::multiset去实现。

参考资料

 

随机推荐