天天看點

ZOJ 2433 Highways(水題)

題意:找最短的一段路。。

好久沒有做題了,太水了,wa了兩次。第一次,找線段首尾兩段要去掉的,結果弄錯了範圍,

第二次沒有空行也是wa,我真是太水了。

#include <cstdio>
#include <cstring>
#include <cmath>
#include <iostream>
#include <algorithm>
#include <stack>
#include <queue>

using namespace std;
int n;
int re[50009];
const int INF = 0x3f3f3f3f;
int main()
{
    freopen("in.txt","r",stdin);
    int cas;
    scanf("%d",&cas);int    ou = 0;
    while(cas--)
    {
        if(ou ) printf("\n");ou = 1;
        int ans,mi = INF;
        scanf("%d",&n);
        for(int i=1;i<n;i++)
        scanf("%d",&re[i]);
        if(n<4)
        {
            printf("0\n");
            continue;
        }
        for(int i=2;i<n-1;i++)
        if(mi>re[i]-re[i-1])
        {
            mi = re[i] - re[i-1];
            ans = i;
        }
        printf("%d\n",mi+re[n-1]);
        printf("%d 1 %d %d\n",ans+1,n,ans);
    }
    return 0;
}