Cod sursa(job #1709163)

Utilizator forsakenAweUNIBUC Suditu Cornoiu Chihai forsakenAwe Data 28 mai 2016 11:07:47
Problema Consecutive Scor 100
Compilator cpp Status done
Runda ONIS 2016 - Runda - 2 - ACM ICPC Romanian Programming Contest Marime 0.75 kb
#include <bits/stdc++.h>
using namespace std;
int A[100100], B[100100];
int nr;
int main()
{

   freopen("consecutive.in","r",stdin);
    freopen("consecutive.out","w",stdout);

    int T;
     scanf("%d", &T);
    while(T--)
    {
        int n;
        scanf("%d", &n);

        nr  = 0;


        for(long long l = 2; ;l++)
        {
            long long ll = l*(l - 1)/2;
            if (ll + l > n) break;

            int m = n - ll;
            if (m % l) continue;

            int a = m / l;
            A[++nr] = a;
            B[nr] = a + l - 1;
        }
        cout << nr << '\n';
        for(int i = 1; i <= nr; i++) {
            cout << A[i] << ' ' << B[i] << '\n';
        }

    }





    return 0;
}