洛谷 P1147 连续自然数和
#include<iostream>
#include<cmath>
using namespace std;
typedef long long ll;
int main(){
ll N;
cin >> N;
for(ll i = 1; i <= N / 2; i++){
ll t = 2 * N + i * i - i;
ll delt = 4 * t + 1;
if(delt < 0) continue;
else{
ll x = (ll)(-1 + sqrt(delt)) / 2;
if(x * x + x - t == 0 && i < x) cout << i << " " << x << endl;
}
}
return 0;
}