Pagini recente » Cod sursa (job #1735061) | Cod sursa (job #933070) | Cod sursa (job #725434) | Cod sursa (job #733950) | Cod sursa (job #1747842)
#include<iostream>
#include<fstream>
#include<vector>
using namespace std;
ofstream fout("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;
}
fout<<pas<<'\n';
for(int i=0;i<pas;++i)fout<<sol[i].first<<" "<<sol[i].second<<'\n';
}
int main(){
int T;
long long n;
ifstream fin("consecutive.in");
fin>>T;
while ( T--){
fin>>n;
solve(n,0,2);
}
return 0;
}