Codeforces Round #601 (Div. 2) 
A
# include <bits/stdc++.h>
using namespace std;
int main()
{
    int T;
    scanf("%d",&T);
    while(T--){
        int a,b;
        scanf("%d%d",&a,&b);
        int c=b-a; 
        if(c<0) c=-c;
        int ans=0;
        ans=c/5;
        int d=c%5;
        if(d==1||d==2) ans+=1;
        else if(d==3||d==4) ans+=2;
        cout<<ans<<endl;
    }
    
    return 0;
 } 
B
# include <bits/stdc++.h>
using namespace std;
const int MAXN=1e3+100;
pair<int,int> a[MAXN];
int main()
{
    int T;
    scanf("%d",&T);
    while(T--){
        int n,m;
        scanf("%d%d",&n,&m);
        int ans=0;
        for(int i=1;i<=n;i++){
            scanf("%d",&a[i].first);
            a[i].second=i;
            ans+=a[i].first*2; 
        }
        if(m<n||n==2) printf("-1\n");
        else{
            m-=n;
            sort(a+1,a+n+1);
            ans+=m*(a[1].first+a[2].first);
            printf("%d\n",ans);
            for(int i=1;i<=m;i++){
                printf("%d %d\n",a[1].second,a[2].second);
            }
            for(int i=1;i<=n;i++){
                if(i!=n){
                    printf("%d %d\n",a[i].second,a[i+1].second);
                }else{