#include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std; int main() { long long i, j, k; long long n; cin >> n; long long add = 1; if (n >= 100000000000000) { add = 10000000; } else if (n >= 100000000000) { add = 100000; } else if (n >= 100000000) { add = 10000; } else if (n >= 100000) { add = 100; } bool flag = false; for (i = add; i < n; i+=add) { //n(n+1)/2 long long num = i*(i + 1) / 2; if (num == n) { cout << "YES" << endl; cout << i << endl; getchar(); getchar(); return 0; } if (num > n && flag == false) { i -= add; add = add / 100; if (add <= 1) { add = 1; flag = true; } } if (num > n && flag == true) { cout << "NO" << endl; getchar(); getchar(); return 0; } } getchar(); getchar(); return 0; }