Loading

P4995 跳跳!

题目链接

https://www.luogu.com.cn/problem/solution/P4995

题目思路

就是一高一低来回跳,由于数据大,所以答案用long long(用int只a一半)

题目代码

#include <iostream>
#include <algorithm>

using namespace std;
typedef long long LL;
const int N = 1010;
int s[N];
int n;


int main()
{
    cin >> n;
    for(int i = 1; i <= n; i ++ )
        cin >> s[i];
    sort(s + 1, s + n + 1);
    LL ans = 0;
    int last = 0, idx = n;
    for(int i = 1; i <= n; i ++ )
    {
        //cout << last << ' ' << idx << endl;
        if(i % 2 == 1)
        {
            ans += (s[idx] - last) * (s[idx] - last);
            last = s[idx], idx = n - idx + 1;
        }
        else
        {
            ans += (s[idx] - last) * (s[idx] - last);
            last = s[idx], idx = n - idx;
        }
    }
    cout << ans << endl;
    return 0;
}
posted @ 2022-03-24 20:01  vacilie  阅读(58)  评论(0)    收藏  举报