fork(7) download
  1. #include<bits/stdc++.h>
  2. #define gcd __gcd
  3. #define pii pair<int,int>
  4. #define mkp make_pair
  5. #define pb push_back
  6. #define getcx getchar
  7. #define pc putchar
  8. #define vi vector <int>
  9. #define get(x) scanf("%d",&x)
  10. #define getl(x) scanf("%lld",&x)
  11. #define print(x) printf("%d\n",x)
  12. #define bitcount __builtin_popcount
  13. #define printl(x) printf("%lld\n",x)
  14. #define F first
  15. #define S second
  16. #define MX 1000005
  17. using namespace std;
  18. typedef long long ll;
  19.  
  20. int main()
  21. {
  22. int t, n, m, d, D;
  23. cin >> t;
  24.  
  25. while(t--) {
  26. cin >> n >> m >> d >> D;
  27.  
  28.  
  29. if(n*d > m || n*D < m)
  30. cout << "-1\n";
  31. else {
  32. bool done = false;
  33. int ans = 0;
  34. for(int i = 0; i <= n && !done; i++) {
  35. for(int j = 1; j <= n; j++) {
  36. cout << j << " " << (((j+i)<=n)?(j+i):((j+i)%n)) << "\n";
  37. ans++;
  38. if(ans == m) {
  39. done = true;
  40. break;
  41. }
  42. }
  43. }
  44. }
  45. }
  46.  
  47. return 0;
  48. }
Success #stdin #stdout 0s 3472KB
stdin
2
2 3 1 2
2 3 1 1
stdout
1 1
2 2
1 2
-1