hdu2083简易版最短路径。。简单数学题

    xiaoxiao2021-03-25  61

    http://acm.hdu.edu.cn/showproblem.php?pid=2083

    当朋友数为奇数时,设在Xi出发,距离为D,若从Xi左边一格Xj出发,每次往左走要比从Xi往左走短|Xi - Xj|,而向右走则每次多走|Xi - Xj|。

    不难理解当Xi处在最中间,走的路最短

    #include <iostream>

    #include <algorithm> #include <cstring> #include <cmath> using namespace std; int main(void) { ios::sync_with_stdio(false); int T, n, arr[505]; cin >> T; while (T--) { cin >> n; for (int i = 0; i != n; ++i) cin >> arr[i]; sort(arr, arr + n); int middle = n / 2; int ans = 0; for (int i = 0; i != n; ++i) ans += abs(arr[i] - arr[middle]); cout << ans << endl; }
    转载请注明原文地址: https://ju.6miu.com/read-33525.html

    最新回复(0)