#include using namespace std; int i, j, k, n, m; vector> e; int main() { ios_base::sync_with_stdio(0); cin >> k >> n >> m; if(n == m && n == k && k > 1 && k < 4) return cout << "-1\n", 0; if(n == m && n == k && k > 1) { for(i = 2; i < k; ++i) e.push_back(make_pair(1, i)); e.push_back(make_pair(k, k - 1)); cout << e.size() << '\n'; for(auto it : e) cout << it.first << ' ' << it.second << '\n'; return 0; } if(m == k || (n == k && m == 1)) { for(i = 1; i <= n; ++i) for(j = i + 1; j <= n; ++j) e.push_back(make_pair(i, j)); cout << e.size() << '\n'; for(auto it : e) cout << it.first << ' ' << it.second << '\n'; return 0; } if(n == k) { for(i = 1; i <= k && i + m <= k; ++i) for(j = i + 1; j <= k; ++j) e.push_back(make_pair(i, j)); cout << e.size() << '\n'; for(auto it : e) cout << it.first << ' ' << it.second << '\n'; return 0; } cout << "-1\n"; return 0; }