Pagini recente » Cod sursa (job #349178) | Cod sursa (job #2926188) | Cod sursa (job #1413891) | Cod sursa (job #1780399) | Cod sursa (job #1709663)
#include <iostream>
#include <fstream>
#include <vector>
#include <cmath>
#include <algorithm>
#define NMAX 1000005
using namespace std;
ifstream in ( "consecutive.in" );
ofstream out ( "consecutive.out" );
int T , N ;
pair < int , int > v[NMAX];
int main ( void )
{
int i,j;
in >> T;
for ( i = 1 ; i <= T ; ++i ){
in >> N ;
int contor = 0 ;
if ( N % 2 == 1 ){
++contor;
v[contor].first = N/2;
v[contor].second = N/2 + 1 ;
}
for ( j = 2 ; j <= sqrtl(N) ; j ++ ){
if ( N % j == 0 && j % 2 == 1 )
{
if ( N/j > j / 2 ){
++contor;
v[contor].first = N/j - j/2;
v[contor].second = N/j + j/2;
}
}
}
out << contor << "\n";
for ( j = 1; j <= contor ; ++j )
out << v[j].first << " " << v[j].second << "\n";
}
return 0 ;
}