# 題目

AP325 Q-6-4. 闖關二選一

# 解題思路

目前沒東西...

# 程式碼

#include <bits/stdc++.h>
using namespace std;
int main() {
    int n,t;
    while(cin>>n>>t){
        int dp[n][2],a[n],b[n];
        for(int i=0;i<n;i++){
            cin>>a[i]>>b[i];
            if(i==0){
                dp[i][0]=abs(a[i]-t);
                dp[i][1]=abs(b[i]-t);
            }else{
                dp[i][0]=min(abs(a[i]-a[i-1])+dp[i-1][0],abs(a[i]-b[i-1])+dp[i-1][1]);
                dp[i][1]=min(abs(b[i]-a[i-1])+dp[i-1][0],abs(b[i]-b[i-1])+dp[i-1][1]);
            }
        }
        cout<<min(dp[n-1][0],dp[n-1][1]);
    }
    return 0;
}
更新於 閱讀次數 次