NKCABLE - Nối mạng
Tác giả: skyvn97
Ngôn ngữ: C++
#include<stdio.h>
#define MAX 30000
long opt[MAX];
long dis[MAX];
long n;
long min(long x,long y)
{
if (x<y) return (x); else return (y);
}
void init(void)
{
long i;
scanf("%ld",&n);
dis[1]=0;
for (i=2;i<=n;i=i+1)
{
scanf("%ld",&dis[i]);
dis[i]=dis[i]+dis[i-1];
}
}
void optimize(void)
{
long i;
opt[1]=0;
opt[2]=dis[2];
opt[3]=dis[3];
for (i=4;i<=n;i=i+1)
opt[i]=min(opt[i-1],opt[i-2])+dis[i]-dis[i-1];
printf("%ld",opt[n]);
}
int main(void)
{
//freopen("CABLE.INP","r",stdin);
//freopen("CABLE.OUT","w",stdout);
init();
optimize();
}