简单求值
时间限制:
1000 ms | 内存限制:
65535 KB
难度:1
-
描述
-
给出N个整数X1,X2,X3,···,XN ,将这N个数从小到大排序为A1,A2,A3,···,AN ,记数列A1,A2,A3,···,AN 的奇数项之和为P,偶数项之和为Q,令T=|P-Q|,求出T的值。
-
输入
-
输入第一行为整数N(1≤N≤500)。
接下来的N行每行有一个整数,按顺序给出X1,X2,X3,···,XN ,的值(|Xi|≤1000)
输出
- 输出T的值。 样例输入
-
3132
样例输出
-
2
-
输入第一行为整数N(1≤N≤500)。
这道题一定要看好题目,注意是排好序后的数据的处理,千万要细心。
代码:
#include <stdio.h>
#include <algorithm>
int main()
{
int i,j,k[200];
int sum1=0,sum2=0;
scanf("%d",&i);
for(j=0;j<i;j++)
scanf("%d",&k[j]);
std::sort(k,k+i);
for(j=0;j<i;j++)
{
if(j%2==1)
sum1+=k[j];
else
sum2+=k[j];
}
printf("%d\n",sum1>sum2?sum1-sum2:sum2-sum1);
return 0;
}
#include <algorithm>
int main()
{
int i,j,k[200];
int sum1=0,sum2=0;
scanf("%d",&i);
for(j=0;j<i;j++)
scanf("%d",&k[j]);
std::sort(k,k+i);
for(j=0;j<i;j++)
{
if(j%2==1)
sum1+=k[j];
else
sum2+=k[j];
}
printf("%d\n",sum1>sum2?sum1-sum2:sum2-sum1);
return 0;
}