1046 Shortest Distance

這道題雖然也是一道模擬題,但是直接模擬,第三個(gè)測(cè)試點(diǎn)超時(shí)了...
這道題還是需要一點(diǎn)技巧的。

#include<iostream>
using namespace std;
const int maxn = 100010;
int a[maxn] = { 0 };
int main() {
    int n, dis, m, st, ed;
    int sum = 0;
    scanf("%d", &n);
    for (int i = 1; i <= n; i++) {
        scanf("%d", &dis);
        sum += dis;
        a[i] = sum;
    }
    scanf("%d", &m);
    for (int i = 0; i < m; i++) {
        scanf("%d %d", &st, &ed);
        if (st > ed) {
            swap(st, ed);
        }
        int ans1 = a[ed - 1] - a[st - 1];
        int ans2 = sum - ans1;
        printf("%d\n", ans1 < ans2 ? ans1 : ans2);
    }
    return 0;
}
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容