总时间限制: 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); } }