入门...
1 #include<cstdio> 2 #define abs(a) ((a)>=0?(a):(-(a))) 3 #define min(a,b) ((a)<(b)?(a):(b)) 4 #define maxn 100050 5 using namespace std; 6 int dp[maxn],a[maxn]; 7 int main(){ 8 int n,k=2; 9 scanf("%d",&n); 10 for (int i=1;i<=n;i++) 11 scanf("%d",&a[i]),dp[i]=1e9; 12 dp[1]=0; 13 for (int i=2;i<=n;i++){ 14 for (int j=1;j<=k;j++) 15 if (i-j>0) dp[i]=min(dp[i],dp[i-j]+abs(a[i-j]-a[i])); 16 } 17 printf("%d\n",dp[n]); 18 return 0; 19 }