public static int[] twoSum(int[] numbers, int target) {
    	int[] index = new int[numbers.length];
    	for(int i = 0; i < numbers.length; i++) index[i] = i + 1;
    	quicksort(numbers, 0, numbers.length - 1, index);
    	
    	int start = 0, end = numbers.length - 1;
    	while(start < end){
    		if(numbers[start] + numbers[end] == target){
    			int[] result;
    			if(index[start] < index[end]){
    				result = new int[]{index[start], index[end]};
    			} else {
    				result = new int[]{index[end], index[start]};
    			}
    			return result;
    		} else if(numbers[start] + numbers[end] < target){
    			start++;
    		} else {
    			end--;
    		}
    	}
//    	for(int i = 0; i < numbers.length; i++)
//			System.out.print(numbers[i] + " ");
//		System.out.println();
//		for(int i = 0; i < index.length; i++)
//			System.out.print(index[i] + " ");
        return null;
    }