和你想法一样,实现有点不同: #include <stdio.h> #define N 100005 int main(void) { int t; scanf("%d", &t); while (t--) { int i, n, num[N]; scanf("%d", &n); for (i = 0; i < n; i++) scanf("%d", num + i); int left = 0, right = n - 1, res = 0, counted = 0; while (right > left) { int min = num[left] < num[right] ? num[left] : num[right]; if (min > counted) { res += (min - counted) * (right - left); counted = min; } if (num[left] < num[right]) left++; else right--; } printf("%d\n", res); } return 0; }
3 3

相关推荐

09-22 09:42
门头沟学院 Java
牛客37185681...:马德,我感觉这是我面过最恶心的公司,一面是两个女hr,说什么实习前几个月属于试用期,试用期过了才能转成正式实习生,我***笑了,问待遇就是不说,问能不能接受全栈,沙币公司
如果可以选,你最想去哪家...
点赞 评论 收藏
分享
10-15 10:23
门头沟学院 Java
牛可乐的头像真牛:赶紧举报,这公司绝对是诈骗的,等你签约后工作一两个月后根据合同漏洞把你开除,并且要求你赔偿3w培训费,996是为了提前筛选心甘情愿签下合同容易受骗的群体,纯粹面向校招生精心设计的骗局
你见过哪些工贼行为
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务