From ebb579dd31a19a4d08a8e9aae97c5fc354bc3e8b Mon Sep 17 00:00:00 2001 From: Raphael McSinyx Date: Fri, 11 Aug 2017 13:43:15 +0700 Subject: Add 12/QG-2007/maxiseq.c --- 12/QG-2007/maxiseq.c | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 12/QG-2007/maxiseq.c (limited to '12/QG-2007/maxiseq.c') diff --git a/12/QG-2007/maxiseq.c b/12/QG-2007/maxiseq.c new file mode 100644 index 0000000..94c15c8 --- /dev/null +++ b/12/QG-2007/maxiseq.c @@ -0,0 +1,36 @@ +#include +#include + +char is_in_u(long x) +{ + long y = (long) sqrt(x *= 2); + return y * (y + 1) == x; +} + +int main() +{ + FILE *f = fopen("MAXISEQ.INP", "r"); + short n, i, max = 0, start = -1; + long a, b; + + fscanf(f, "%hd\n", &n); + for (i = 0; i < n; i++) { + b = a; + fscanf(f, "%ld\n", &a); + if (!is_in_u(a) || start >= 0 && b > a) { + start = -1; + continue; + } + if (start < 0) + start = i; + if (i - start >= max) + max = i - start + 1; + } + fclose(f); + + f = fopen("MAXISEQ.OUT", "w"); + fprintf(f, "%hd\n", max); + fclose(f); + + return 0; +} -- cgit 1.4.1