nantan #3889(2007/11/12 04:18 GMT) [ Java ] Rating0/0=0.00
もっとスリム化できそうですがとりあえず。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
import java.util.*; public class NakamaHazure { public static void main(String[] args) { check(Arrays.asList(1,1,1,1)); // => [1] check(Arrays.asList(1,2,1,1,1)); // => [2,1] check(Arrays.asList(1,2,2,1,1)); // => [] check(Arrays.asList(1,2,2,1,3)); // => [] } private static void check(List<Integer> list) { HashSet<Integer> set = new HashSet<Integer>(); HashSet<Integer> minor = new HashSet<Integer>();; Integer major = null; for (Integer i : list) { if (!set.add(i)) { if (major != null && major != i) { System.out.println("[]"); return; } minor.remove(i); major = i; } else { minor.add(i); } } if (set.size() == 1) { System.out.println("[" + set.iterator().next() + "]"); } else if (set.size() == 2) { System.out.println("[" + minor.iterator().next() + "," + major + "]"); } else { System.out.println("[]"); } } }
Rating0/0=0.00-0+
1 reply [ reply ]
nantan #3889() [ Java ] Rating0/0=0.00
Rating0/0=0.00-0+