Pagini recente » Cod sursa (job #979543) | Cod sursa (job #1865949) | Cod sursa (job #2481041) | Cod sursa (job #322492) | Cod sursa (job #2006283)
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;
ifstream f("consecutive.in");
ofstream g("consecutive.out");
void solve(long long number , int pas , long long n)
{
vector<pair<long long ,long long > > sol;
while ( n*(n+1) <= 2*number)
{
if ( (2*number - n*n +n )%(2*n) ==0)
{
long long a1 ,aN;
a1 =(2*number - n*n+n)/(2*n);
aN = a1 + n -1 ;
++pas;
sol.push_back(make_pair(a1,aN));
}
++n;
}
g<<pas<<'\n';
for(int i=0;i<pas;++i)g<<sol[i].first<<" "<<sol[i].second<<'\n';
}
int main()
{
int T;
long long n;
f>>T;
while(T--)
{
f>>n;
solve(n,0,2);
}
return 0;
}