poj 2313

贪心。

代码:

#include<iostream>
#include<fstream>

using namespace std;

int b[101],a[101];
int n;

int cmp(const void *a,const void *b){
	return *(int*)a-*(int*)b;
}


int solve(int n1,int n2,int n3){
	int c[3];
	c[0]=n1;c[1]=n2;c[2]=n3;
	qsort(c,3,sizeof(int),cmp);
	return c[1];
}

void read(){
//	ifstream cin("in.txt");
	int i,j,k;
	int ans=0;
	cin>>n;
	for(i=1;i<=n;i++)
		cin>>a[i];
	b[1]=a[1];b[n]=a[n];
	for(i=2;i<n;i++)
		b[i]=solve(b[i-1],a[i],a[i+1]);
	for(i=1;i<=n;i++)
		ans+=abs(a[i]-b[i]);
	for(i=1;i<n;i++)
		ans+=abs(b[i]-b[i+1]);
	cout<<ans<<endl;
}

int main(){
	read();
	return 0;
}

posted on 2011-04-23 19:26  宇宙吾心  阅读(246)  评论(0)    收藏  举报

导航