A-candle(思维,枚举)

#include<stdio.h>
#include<math.h>
#include<string.h>
#include<ctype.h>
#include<iostream>
#include<algorithm>
#include<queue> 
#include<bitset>
#include<vector>
#include<map>
typedef long long ll;
using namespace std;
ll meme[100009];
int main()
{
    int len,k;cin>>len>>k;
    for(int i=1;i<=len;i++)  cin>>meme[i];
    ll ans=1e18;
    int r;
    for(int i=1;i<=len-k+1;i++)
    {
        r=i+k-1;
        ans=min(ans,meme[r]-meme[i]+min(abs(meme[i]),abs(meme[r])));
    }
    cout<<ans<<endl;
}

在这里给队友道歉由于我太笨这题在做的时候便秘了好久没拉出来

思路是枚举每一个区间的位置,点蜡烛途中为保证时间最短必定不能回头走,所以只需要算区间的长度加上从0移动道k点的距离即可

posted on 2022-04-28 15:28  zesure  阅读(21)  评论(0编辑  收藏  举报

导航