#include <iostream>
using namespace std;
void divMax(int n){
int f[n+1];
f[0] = 0;
f[1] = 1;
f[2] = 2;
f[3] = 3;
for(int i=4;i<=n;i++){
f[i] = max(i,(f[i/2]+f[i/3]+f[i/4]));
}
cout<<f[n];
}
int main() {
int n=23;
divMax(n);
// your code goes here
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKdm9pZCBkaXZNYXgoaW50IG4pewoJaW50IGZbbisxXTsKCWZbMF0gPSAwOwoJZlsxXSA9IDE7CglmWzJdID0gMjsKCWZbM10gPSAzOwoJZm9yKGludCBpPTQ7aTw9bjtpKyspewoJCWZbaV0gPSBtYXgoaSwoZltpLzJdK2ZbaS8zXStmW2kvNF0pKTsKCX0KCWNvdXQ8PGZbbl07Cn0KCmludCBtYWluKCkgewoJaW50IG49MjM7CglkaXZNYXgobik7CgkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCglyZXR1cm4gMDsKfQ==