Pagini recente » Cod sursa (job #2935021) | Cod sursa (job #2894690) | Cod sursa (job #2396834) | Cod sursa (job #2935030) | Cod sursa (job #2054160)
#include<fstream>
#include<list>
#include<utility>
using namespace std;
ifstream cin("consecutive.in");
ofstream cout("consecutive.out");
int main(){
int t,n;
cin >> t;
while(t--){
cin >> n;
list <pair<int,int> > q;
for(int l = 2; (1LL*l*(l+1)/2) <= n; l++)
{
int i = (1LL*2*n/l - l + 1)/2;
if(1LL*2*n%l == 0 && (1LL*2*n/l - l + 1)%2 == 0 && i >= 1){
q.push_back(make_pair(i, i + l - 1));
}
}
cout << q.size() << "\n";
while(q.size())
{
cout << q.front().first << " " << q.front().second << "\n";
q.pop_front();
}
}
return 0;
}