上善若水

  C++博客 :: 首页 :: 联系 :: 聚合  :: 管理
  2 Posts :: 32 Stories :: 2 Comments :: 0 Trackbacks

常用链接

留言簿

我参与的团队

最新随笔

搜索

  •  

积分与排名

  • 积分 - 10174
  • 排名 - 1166

最新评论

阅读排行榜

评论排行榜

奇偶求值

时间限制(普通/Java):1000MS/3000MS          运行内存限制:65536KByte
总提交:118            测试通过:44

描述

给出N个整数,将这N个数从小到大排序后,记排序后的奇数项之和为P,偶数项之和为Q,令T=|P-Q|.求出T的值

输入

第一行为N  N<=50000

接下来每行一个整数,每个数的绝对值不大于1000

输出

输出T的值

样例输入

3
1
3
2

样例输出

2

题目来源

GDOI 2003


分析:安步骤来。。。
#include <stdio.h>
#include 
<stdlib.h>
int Comp(const void *p1,const void *p2)
{
    
return *((int *)p1) - *((int *)p2);
}
int main()
{
    
int n,m=0,i,*p;
    scanf(
"%d",&n);
    p
=new int[n];
    
for (i=0;i<n;i++)
    {
        scanf(
"%d",&p[i]);
    }
    qsort(p,n,
sizeof(int),Comp);
    
for (i=0;i<n;i++)
    {
        
if (i&1)
            m
+=p[i];
        
else
            m
-=p[i];
    }
    printf(
"%d\n",m>0?m:-1*m);
}
posted on 2009-12-15 22:18 上善若水 阅读(110) 评论(0)  编辑 收藏 引用

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理