#include <bits/stdc++.h>
using namespace std;
vector<int> twoSum(vector<int>& nums, int target) {
    map<int, int> indexMap;
    vector<int> result;
    int n = nums.size();
    for(int i = 0; i < n; i++){
        if(indexMap.find(nums[i] - target) != indexMap.end()){
            result.push_back(indexMap[nums[i]]);
            result.push_back(i);
        } else{
            indexMap[nums[i]] = i;
        }
    }
    return result;
}
int main() {
	map<int, int> indexMap;
    vector<int> result, nums(4);
    nums[0] = 3; nums[1] = 2; nums[2] = 6; nums[3] = 5;
    int target = 5;
    int n = nums.size();
    for(int i = 0; i < n; i++){
        if(indexMap.find(target - nums[i]) != indexMap.end()){
            result.push_back(indexMap[nums[i]]);
            result.push_back(i);
            cout << indexMap[target - nums[i]] << " " << i << endl;
            break;
        } else{
            indexMap[nums[i]] = i;
        }
    }
	return 0;
}