题解 | #小美走公路#

小美走公路

https://www.nowcoder.com/practice/23a0696faab049c2b5beb480db684487

#include <stdio.h>
#define ll long long
#define min(a,b) a<b?a:b
int main() {
    ll n;
    if (scanf("%lld", &n) != EOF) {
        ll a[n], dp[n];
        ll sum = 0;
        for(ll i = 0; i < n; i++) {
            if(scanf("%lld", &a[i]) != EOF) {
                sum += a[i];
                // printf("a[%d]: %d\n", i, a[i]);
                // printf("dp[%d]: %d\n", i, dp[i]);
            } else printf("error2\n");
        }
        dp[0] = a[0];
        for(ll i = 1; i < n; i++) {
            dp[i] = dp[i - 1] + a[i];
        }
        ll x, y;
        if(scanf("%lld %lld", &x, &y) != EOF) {
            ll clockwise = dp[y - 2] - dp[x - 2];
            // printf("clockwise: %lld\n", clockwise);
            if(clockwise < 0) clockwise = -clockwise;
            ll counterclockwise = sum - clockwise;
            // printf("counterclockwise:%lld\n", counterclockwise);
            if(counterclockwise < 0) counterclockwise = -counterclockwise;
            
            printf("%lld\n", min(clockwise, counterclockwise));
        } else printf("error3\n");
    } else printf("error1\n");
    return 0;
}

全部评论

相关推荐

11-11 16:40
已编辑
门头沟学院 人工智能
不知道怎么取名字_:这个有点不合理了,相当于已经毕业了,但还是没转正,这不就是白嫖
点赞 评论 收藏
分享
10-30 19:23
已编辑
山东大学(威海) C++
牛至超人:其实简历是不需要事无巨细的写的,让对方知道你有这段经历就行了,最重要的是面试的时候讲细讲明白
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务