#include using namespace std; int dp[300005]; int main() { ios::sync_with_stdio(false); cin.tie(0); int N; cin >> N; memset(dp, 0x3f, sizeof(dp)); dp[0] = 0; for (int i = 1; i * i <= N; i++) { int w = i * i; for (int j = w; j <= N; j++) { dp[j] = min(dp[j], dp[j - w] + i); } } int n = N; int s = 0; string ans = ""; while (n > 0) { for (int l = 1; l * l <= n; l++) { if (dp[n - l * l] == dp[n] - l) { for (int i = 0; i < l; i++) { ans += (s + i) % 2 + '0'; } s = (s + l - 1) % 2; n -= l * l; break; } } } cout << ans << "\n"; return 0; }