Pairs
Using Vectors
#include<vector>
#include<bits/stdc++.h>
using namespace std;
int main()
{
int n,i,a;
cin>>n;
vector< pair<int,int>> v;
for(i=0;i<n;i++)
{
cin>>a;
v.push_back(make_pair(a,i+1));
}
sort(v.begin(),v.end()); //Sorting, but the vector of pairs is sorted according to first value of pair
for(i=0;i<n/2;i++)
{
cout<<v[i].second<<" "<<v[n-1-i].second<<" "<<v[i].first<<endl;
}
}
Using Arrays
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n;
cin>>n;
pair<int,int>a[100] or a[n];
for(int i=0;i<n;i++)
{
cin>>a[i].first;
a[i].second=i+1; // can also use another operation
}
sort(a,a+n);
for(int i=0;i<n/2;i++)
cout<<a[i].second<<" "<<a[n-i-1].second<<endl;
}
pair of pair and pairs
#include<bits/stdc++.h>
using namespace std;
int main()
{
pair<pair<int,int>,pair<int,int>>v[3];
int i;
for(i=0;i<3;i++)
cin>>v[i].first.first>>v[i].first.second>>v[i].second.first>>v[i].second.second;
sort(v,v+3);
for(i=0;i<3;i++)
{cout<<v[i].first.first<<" "<<v[i].first.second<<v[i].second.first<<" "<<v[i].second.second<<endl;}
}
Comments
Post a Comment