#include #include #include int cmp(const void *x, const void *y) { return *(int*)x - *(int*)y; } int main(int argc, char **argv) { srand(time(NULL)); int n = rand() % 1000 + 1; int m = rand() % 1000 + 1; if(argc >= 3) { n = atoi(argv[1]); m = atoi(argv[2]); } int k = argc == 4 ? atoi(argv[3]) : rand() % 100000 + 1; printf("%d %d\n", n, m); for(int i = 0; i < n; i++) { for(int j = 0; j < m - 1; j++) printf("%d ", rand() % 1000000000 + 1); printf("%d\n", rand() % 1000000000 + 1); } int *tab = calloc(k, sizeof(k)); for(int i = 0; i < k; i++) tab[i] = rand() % 1000000000 + 1; qsort(tab, k, sizeof(int), cmp); printf("%d\n", k); for(int i = 0; i < k - 1; i++) printf("%d ", tab[i]); printf("%d\n", tab[k - 1]); free(tab); return 0; }