#define _GLIBCXX_DEBUG #include using namespace std; using ll = long long; using Graph = vector>; int main(){ ll n; cin >> n; vector>a(2*n); for(ll i=0; i < n*2;i++){ cin >> a[i].first; a[i].second=i+1; } sort(a.begin(),a.end()); ll c=0; for(ll i=0; i < n;i++){ c += abs(a[2*n-i-1].first-a[i].first); } cout << c << endl; for(ll i=0; i < n;i++){ cout << a[i].second << " " << a[2*n-i-1].second << endl; } }