OpenJudge 2807: 两倍

总时间限制: java

1000ms翻译

 

内存限制: code

65536kB内存

描述get

给定2到15个不一样的正整数,你的任务是计算这些数里面有多少个数对知足:数对中一个数是另外一个数的两倍。

好比给定1 4 3 2 9 7 18 22,获得的答案是3,由于2是1的两倍,4是2个两倍,18是9的两倍。class

输入import

一行,给出2到15个两两不一样且小于100的正整数。最后用0表示输入结束。List

输出im

一个整数,即有多少个数对知足其中一个数是另外一个数的两倍。next

样例输入

1 4 3 2 9 7 18 22 0

样例输出

3

来源

翻译自Mid-Central USA 2003的试题

import java.util.ArrayList;
import java.util.Scanner;

public class OpenJudge2807 {

	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);
		ArrayList<Integer> list = new ArrayList<Integer>();
		while (scanner.hasNext()) {
			int temp = scanner.nextInt();
			if (temp == 0) {
				break;
			}
			list.add(temp);
		}
		int count = 0;
		for (int i = 0; i < list.size(); i++) {
			int a = list.get(i);
			if (a % 2 != 0) {
				continue;
			}
			for (int j = 0; j < list.size(); j++) {
				if (j != i && list.get(i) == list.get(j) * 2) {
					count++;
					break;
				}
			}
		}
		scanner.close();
		System.out.println(count);

	}

}
相关文章
相关标签/搜索