#include #include #include #include #include #include #include #include using namespace std; const double INF = 2e9; const double EPS = 1e-8; pair mm(long long M) { long long mm1, mm2; if (M % 2 == 0) { mm1 = (M / 2); mm2 = (M + 1); } else { mm1 = (M + 1) / 2; mm2 = M; } return {mm1, mm2}; } int main() { long long n; cin >> n; long long L = 0, R = 2000000000; while (R - L > 1) { long long M = (R + L) / 2; auto [mm1, mm2] = mm(M); if (mm1 <= n / mm2) { L = M; } else { R = M; } } auto [LL1, LL2] = mm(L); if ((n % LL2 == 0) && (LL1 == n / LL2)) { cout << "YES" << endl; cout << L << endl; } else { cout << "NO" << endl; } }