Pagini recente » Cod sursa (job #2895804) | Cod sursa (job #358230) | Cod sursa (job #365892) | Cod sursa (job #3124508) | Cod sursa (job #1708863)
#include <iostream>
#include <vector>
#include <math.h>
#include <stdio.h>
using namespace std;
typedef long long ll;
int t;
ll n;
int main()
{
freopen("consecutive.in","r",stdin);
freopen("consecutive.out","w",stdout);
for(cin >> t; t--;) {
cin >> n;
int sol = 0;
for(ll i = sqrt(2*n)+1; i>=1;i--) {
if (( n- (i*(i+1)/2) )>0 && ( n- (i*(i+1)/2) ) % (i+1) == 0) {
sol++;
}
}
cout<<sol<<"\n";
for(ll i = 1; i <= sqrt(2*n)+1; i++) {
if (( n- (i*(i+1)/2) )>0 && ( n- (i*(i+1)/2) ) % (i+1) == 0) {
cout<< ((n- (i*(i+1)/2) ) / (i+1)) << " " << ((n-(i*(i+1)/2) ) / (i+1)+i) << "\n";
}
}
}
return 0;
}