#include <iostream>

using namespace std;

int main()
{
    long long n,m,k;
    cin>>k>>n>>m;



    if(n == 1)
    {
        if(m == k)
        {
            cout<<-1;
        }
            else
                cout<<-1;
            return 0;
    }
    if(m == 1)
    {
        if(n == k)
        {
            cout<< k*(k-1)/2<<'\n';
            for(int i=1;i<=k;i++)
            {
                for(int j=i+1;j<=k;j++)
                {
                    cout<<i<<' '<<j<<'\n';
                }
            }
        }
            else
                cout<<-1;
            return 0;
    }

    if(m == k)
    {
        cout<<n-1<<'\n';
        for(int i=2;i<=n;i++)
            cout<<i-1<<' '<<i<<'\n';
        return 0;
    }
    if(n == k)
    {
        cout<<k*(k-1)/2 - m+1<<'\n';
        for(int i=1;i<=m-1;i++)
            for(int j=i+2; j<= k ;j++)
            cout<<i<<' '<<j<<'\n';

        for(int i=m;i<=k;i++)
            for(int j=i+1; j<= k ;j++)
            cout<<i<<' '<<j<<'\n';
        return 0;
    }
    cout<<-1<<'\n';


    return 0;
}