题解 | #小美走公路#

小美走公路

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

#include <iostream>
#define int long long
using namespace std;
int a[200005];
signed main() {
    int n, sum = 0;
    cin >> n;
    for(int i = 1; i <= n; i++){
        cin >> a[i];
        a[n + i] = a[i];
    }
    for(int i = 1; i <= 2 * n; i++){
        a[i] += a[i - 1];
    }
    int x, y;
    cin >> x >> y;
    if(x > y)swap(x, y);
    cout << min(a[y - 1] - a[x - 1], a[x + n - 1] - a[y - 1]);
}
// 64 位输出请用 printf("%lld")

前缀和的运用 + 拆环为链, 长度加倍

注意:1.long long 2.x和y的大小关系

#悬赏#
言の随记题解 文章被收录于专栏

喵喵喵喵喵

全部评论
首次评论必得10牛币题解大赞
点赞 回复 分享
发布于 2024-11-25 02:02 陕西

相关推荐

点赞 评论 收藏
分享
评论
1
收藏
分享
牛客网
牛客企业服务