Cod sursa(job #1708905)

Utilizator DEFINEtelyEngineersUPB Pirtoaca Vasilescu Zamfiratos DEFINEtelyEngineers Data 28 mai 2016 10:11:57
Problema Consecutive Scor 0
Compilator cpp Status done
Runda ONIS 2016 - Runda - 2 - ACM ICPC Romanian Programming Contest Marime 0.63 kb
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;

#define NMAX (1<<30)

vector <pair <int, int > > sol;

int main ()
{
	int t,n,m,a,i;
	ifstream f("consecutive.in");
	ofstream g("consecutive.out");
	f >> t;
	while(t--) {
		f>>n;
		for(i = 2; 1LL * i * (i - 1)/2 <= n; i++) {
			m = n - i * (i - 1)/2;
			if(m <= 0)
				break;
			if(m % i == 0) {
				a = m / i;
				sol.push_back(make_pair(a, a + i - 1));
			}
		}
		g << sol.size() << '\n';
		for(vector <pair <int, int > > :: iterator it = sol.begin();it!=sol.end();it++)
		g<<it->first<<" "<<it->second<<'\n';
		sol.clear();
	}
	return 0;
}