关注
#include <iostream> int GetWater(int * pBoardHeight, int iLeft, int iRight); int main() { int i_test_count;//测试用例数 std::cin >> i_test_count; int * p_board_count = new int[i_test_count];//每个测试用例木板数数组 int ** p_board_height = new int *[i_test_count];//木板高度数组 for (int i = 0; i < i_test_count; i++) { std::cin >> p_board_count[i]; p_board_height[i] = new int[p_board_count[i]]; for (int j = 0; j < p_board_count[i]; j++) { std::cin >> p_board_height[i][j]; } } for (int i = 0; i < i_test_count; i++) { std::cout << GetWater(p_board_height[i], 0, p_board_count[i] - 1) << std::endl; } if (p_board_height) { for (int i = 0; i < i_test_count; i++) { if (p_board_height[i]) { delete[] p_board_height[i]; p_board_height[i] = NULL; } } } delete[] p_board_height; p_board_height = NULL; return 0; } int GetWater(int * pBoardHeight, int iLeft, int iRight) { int i_max_1 = 0; int i_max_1_index = 0; int i_max_2 = 0; int i_max_2_index = 0; for (int i = iLeft; i <= iRight; i++) { if (pBoardHeight[i] > i_max_1) { i_max_1 = pBoardHeight[i]; i_max_1_index = i; } } for (int i = iLeft; i <= iRight; i++) { if ( (pBoardHeight[i] > i_max_2 && pBoardHeight[i] != i_max_1) || (pBoardHeight[i] == i_max_1 && i != i_max_1_index) ) { i_max_2 = pBoardHeight[i]; i_max_2_index = i; } } int mid_1 = (i_max_1_index < i_max_2_index) ? i_max_1_index : i_max_2_index; int mid_2 = (i_max_2_index > i_max_1_index) ? i_max_2_index : i_max_1_index; int sum = (mid_2 - mid_1) * i_max_2; if (mid_2 < iRight) sum += GetWater(pBoardHeight, mid_2, iRight); if (mid_1 > iLeft) sum += GetWater(pBoardHeight, iLeft, mid_1); return sum; }
查看原帖
点赞 4
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
- 1... 后端实习什么算有产出10.0W
- 2... 悟已往之不谏,知来者之可追1.6W
- 3... 以Mentor视角,更喜欢有这些沟通技巧的实习生1.5W
- 4... 来算一算你的offer究竟到手工资多少!(详细教程)1.0W
- 5... 就是说有些招聘要求别太离谱噢1.0W
- 6... 找实习、找工作中如何管理好自己的情绪?9617
- 7... 双非本秋招字节转正失败春招重新拿下字节和腾讯9617
- 8... 腾讯云智一面面经7141
- 9... 暑期实习后,如何完成学生到职场人的身份转换?7071
- 10... 【26届四段大厂】实习爆炸产出方法论 2.06741
正在热议
更多
# 我的求职总结 #
23854次浏览 441人参与
# 我的工作日记 #
96541次浏览 1263人参与
# 毕业季,给职场新人一些建议 #
20091次浏览 363人参与
# 晒一晒你收到的礼盒 #
61718次浏览 371人参与
# 我的实习日记 #
2434019次浏览 25382人参与
# 辞职之后最想做的一件事 #
10088次浏览 157人参与
# Offer比较,求稳定还是求发展 #
49010次浏览 235人参与
# 薪资一样,你会选择去大厂还是小公司 #
16170次浏览 99人参与
# 你想吐槽公司的哪些规定 #
17056次浏览 66人参与
# 选offer应该考虑哪些因素 #
17547次浏览 275人参与
# 你见过最离谱的招聘要求是什么? #
188128次浏览 1401人参与
# 机械人还在等华为开奖吗? #
217106次浏览 1097人参与
# 第一份工作应该只看薪资吗 #
138492次浏览 1456人参与
# 秋招想进国企该如何准备 #
57753次浏览 374人参与
# 为了秋招你都做了哪些准备? #
10698次浏览 161人参与
# 在国企工作的人,躺平了吗? #
327526次浏览 3842人参与
# 你怀疑过自己的专业选择吗? #
17331次浏览 201人参与
# 牛客十周岁生日快乐 #
129544次浏览 1517人参与
# 你想留在一线还是回老家? #
37707次浏览 447人参与
# 你小时候最想从事什么职业 #
91266次浏览 1703人参与