import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Set;
public class atest {
public static void main(String[] args) {
// TODO Auto-generated method stub
// int[] a = {1,3,7,9};
// int[] b = {3,4,11,22,33};
// int[] c = ab(a,b);
// int[] b = {12,4,11,22,33};
// int[] c = sort(b);
// for (int i =0;i<c.length;i++) {
// System.out.print(c[i]+" ");
// }
//
// int[] b = {12,12,11,22,33,33,33};
// List c = findmullist(b);
// System.out.println(c);
// readfile();
// readfilebuf();
// filewrite();
// filebufwrite();
// char c = 74;
// System.out.println(c);
// String s1 = new String("aa");
// String s2 = new String("aa");
// boolean b0 = s1==s2; //false
// boolean b1 = "12"=="12"; //true
// boolean b2 = "12".equals("12");
// System.out.println(b0+","+b1+","+b2);
// testcases();
// findlongest("aseswertttttqwer");
// findways(5);
// int[] array = {3,2,8};
// int result = findsummid(array);
// String result = reverse("Hello Word!");
// boolean result = plalindrome("qwawq");
// int[][] array = {
{1,2,3},{4,5,6}};
// int[] result = clockwise(array);
// System.out.println(result);
int[] array = {1,8,3,2,7,12,5};
getindex(array,10);
}
/**
* 找出数组中两个数的和等于目标数字
* @param array
* @param obj
* @return
*/
public static int[] getindex(int[] array, int obj) {
int[] result = new int[array.length];
int index = 0;
Map<Integer,Integer> map = new HashMap<Integer,Integer>();
for(int i=0; i<array.length; i++) {
map.put(obj-array[i], i);
}
for(int i=0; i<array.length;i++ ) {
if(map.containsKey(array[i])&& i!=map.get(array[i])) {
result[index++]=i;
result[index++]=map