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);

	}

}
相關文章
相關標籤/搜索