| using namespace std; | |
| int main(int argc, char* argv[]) { | |
| int n = 100000; | |
| int subtask = 3; | |
| if (argc > 1) n = atoi(argv[1]); | |
| if (argc > 2) subtask = atoi(argv[2]); | |
| // Generate a random permutation (ring order) | |
| vector<int> perm(n); | |
| iota(perm.begin(), perm.end(), 0); | |
| mt19937 rng(42); | |
| shuffle(perm.begin(), perm.end(), rng); | |
| // Input file format: subtask n | |
| // Answer file format: permutation | |
| // Write input file | |
| cout << subtask << " " << n << endl; | |
| // Write answer file to stderr | |
| for (int i = 0; i < n; i++) { | |
| if (i) fprintf(stderr, " "); | |
| fprintf(stderr, "%d", perm[i]); | |
| } | |
| fprintf(stderr, "\n"); | |
| return 0; | |
| } | |