1162-奇偶求值

描述

给出N个整数X1,X2,X3,……,XN,将这N个数从小到大排序为A1,A2,A3,……,AN,记数列A1,A2,A3,……,AN的奇数项之和为P,偶数项之和为Q,令T=|P-Q|,求出T的值。

输入

第一行为整数N(1<=N<=50000)。接下来的N行每行有一个整数,按顺序给出X1,X2,X3,……,XN的值(|Xi|<=1000)。

输出

输出整数T的值。

样例输入

3

1

3

2

样例输出

2

#include <iostream>
#include <queue>
using namespace std;

int main()
{

    int num,temp,i;
    int Q=0,T=0;
//    int a;
    scanf("%d",&num);
    priority_queue<int> pq;
    for(i=0;i<num;i++)
    {
        scanf("%d",&temp);
        pq.push(temp);
    }
    i=0;
    while(pq.empty()!=true)
    {
        if(i%2==0)
        {
            Q+=pq.top();
            pq.pop();
        }
        else
        {
            T+=pq.top();
            pq.pop();
        }
        i++;
    }
    int p=Q-T;
    if(p>0)
        cout<<p<<endl;
    else
        cout<<-p<<endl;
    return 0;
} 

  

原文地址:https://www.cnblogs.com/Rosanna/p/3436975.html