相反数

问题描述
  有 N 个非零且各不相同的整数。请你编一个程序求出它们中有多少对相反数(a 和 -a 为一对相反数)。
输入格式
  第一行包含一个正整数 N。(1 ≤ N ≤ 500)。
  第二行为 N 个用单个空格隔开的非零整数,每个数的绝对值不超过1000,保证这些整数各不相同。
输出格式
  只输出一个整数,即这 N 个数中包含多少对相反数。
样例输入
5
1 2 3 -1 -2
样例输出
2
 
我的答案:
 
#include <stdio.h>

int main()
{
    int n,result=0;
    scanf("%d",&n);
    int i,j;
    int num[n],p[n];
    for(i=0;i<n;i++)
    {
        p[i]=0;
        scanf("%d",&num[i]);
    }
    for(i=0;i<n;i++)
        for(j=i+1;j<n;j++)
            if((num[j]==-num[i])&&p[i]==0&&p[j]==0)
            {
                result++;
                p[i]=1;
                p[j]=1;
            }


    printf("%d\n",result);
    return 0;
}

 

posted @ 2015-03-19 16:00  云裳诉  阅读(182)  评论(0编辑  收藏  举报