#include "testlib.h" #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #define forn(i, n) for (int i = 0; i < int(n); i++) using namespace std; int main(int argc, char* argv[]) { registerGen(argc, argv, 1); int n = opt(1); int m = opt(2); size_t k = opt(3); int t = rnd.next(-2, 2); set > edges; while (edges.size() < k) { int a = rnd.wnext(n, t); int b = rnd.wnext(m, t); edges.insert(make_pair(a, b)); } vector > e(edges.begin(), edges.end()); shuffle(e.begin(), e.end()); vector pa(n); for (int i = 0; i < n; i++) pa[i] = i + 1; shuffle(pa.begin(), pa.end()); vector pb(m); for (int i = 0; i < m; i++) pb[i] = i + 1; shuffle(pb.begin(), pb.end()); println(n, m, e.size()); forn(i, e.size()) println(pa[e[i].first], pb[e[i].second]); return 0; }