您的位置:首页 > 其它

2014年首届CCF软件能力认证试题 题目一

2015-03-25 15:13 363 查看
摘要: 2014年首届CCF软件能力认证试题参考答案

题目1 相反数

时间限制:1秒

空间限制:256MB

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

参考:

import java.util.Scanner;
public class Main{

public static void main(String args[]){

//基本思路:往后面循环,看看有没有相反数,因为是往后循环的所以不会重复查找
//输入一个正整数 1~500
Scanner input = new Scanner(System.in);
System.out.println("请输入一个1~500的整数:");
int number = input.nextInt();
int[] values = new int[number];
int count = 0;
System.out.println("请输入"+number+"个正整数,且每个数绝对值不超过1000,不同的数");
//n个用单个空格隔开的非零整数,每个数绝对值不超过1000,并且各不相同
//加入数组
for(int i = 0;i < number;i++){
values[i] = input.nextInt();
}
//双重循环查找
for(int i = 0;i < number;i++){
for(int j = i+1;j < number;j++){
if(values[i] == -(values[j])){
count++;
}
}
}

System.out.println(count);

}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息