diff options
Diffstat (limited to 'others/easy20160714/23.c')
-rw-r--r-- | others/easy20160714/23.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/others/easy20160714/23.c b/others/easy20160714/23.c new file mode 100644 index 0000000..8a3ec01 --- /dev/null +++ b/others/easy20160714/23.c @@ -0,0 +1,33 @@ +#include <stdio.h> +#include <stdlib.h> + +int cmp(const void *x, const void *y) +{ + return *(int *) x - *(int *) y; +} + +int main() +{ + FILE *f = fopen("INP.TXT", "r"); + int n, i, *a, r = 1; + + fscanf(f, "%d", &n); + a = malloc(n * sizeof(int)); + + for (i = 0; i < n; i++) + fscanf(f, "%d", a + i); + + fclose(f); + + qsort(a, n, sizeof(int), cmp); + + for (i = 1; i < n; i++) + if (a[i] > a[i - 1]) + r++; + + f = fopen("OUT.TXT", "w"); + fprintf(f, "%d\n", r); + fclose(f); + + return 0; +} |