#include #include #include #include #include #include #include #include #include #include #include #include #include #include #define INF 1e9 #define MAX_T 2000000000 using namespace std; typedef long long ll; typedef pair P; ll n; ll sheep(ll t) { return t * (t + 1) / 2; } ll my_binary_search(ll l, ll r) { if (r - l == 1) { ll num_l = sheep(l); ll num_r = sheep(r); if (num_l == n) return l; else if (num_r == n) return r; else return 0; } ll c = (l + r) / 2; ll num = sheep(c); if (num == n) { return c; } else if (num > n) { return my_binary_search(l, c); } else { return my_binary_search(c, r); } } int main() { cin >> n; ll l = 0, r = MAX_T; ll ans = my_binary_search(l, r); if (ans == 0) cout << "NO" << endl; else { cout << "YES" << endl << ans << endl; } return 0; }