#include #include using namespace std; const int N = 4510; int n; unordered_set s; int main() { // freopen("coin.in", "r", stdin); // freopen("coin.out", "w", stdout); scanf("%d", &n); for (int i = 1; i < N; ++i) { s.insert(i * (i - 1) / 2); } if (s.count(n)) puts("1"); else { for (auto e : s) { if (s.count(n - e)) { puts("2"); return 0; } } puts("3"); } return 0; }