#pragma GCC optimize ("Ofast")
#include<bits/stdc++.h>
using namespace std;
template < class S, class T> inline S max_L( S a,T b) {
return a>= b? a: b;
}
#define main dummy_main
int main( ) {
return 0 ;
}
#undef main
class Solution{
public :
int getMaximumGenerated( int n) {
int i;
int arr[ 101 ] = { 0 , 1 } ;
for ( i= ( 2 ) ; i< ( n+ 1 ) ; i++ ) {
if ( i% 2 ) {
arr[ i] = arr[ i/ 2 ] + arr[ i/ 2 + 1 ] ;
}
else {
arr[ i] = arr[ i/ 2 ] ;
}
}
{
int Q5VJL1cS;
int e98WHCEY;
if ( n+ 1 == 0 ) {
e98WHCEY = 0 ;
}
else {
e98WHCEY = arr[ 0 ] ;
for ( Q5VJL1cS= ( 1 ) ; Q5VJL1cS< ( n+ 1 ) ; Q5VJL1cS++ ) {
e98WHCEY = max_L( e98WHCEY, arr[ Q5VJL1cS] ) ;
}
}
return e98WHCEY;
}
}
}
;
// cLay varsion 20201102-1
// --- original code ---
// #define main dummy_main
// {}
// #undef main
//
// class Solution {
// public:
// int getMaximumGenerated(int n) {
// int arr[101] = {0, 1};
// rep(i,2,n+1) arr[i] = arr[i/2] if[i%2, + arr[i/2+1]];
// return max(arr(n+1));
// }
// };
I3ByYWdtYSBHQ0Mgb3B0aW1pemUgKCJPZmFzdCIpCiNpbmNsdWRlPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnRlbXBsYXRlPGNsYXNzIFMsIGNsYXNzIFQ+IGlubGluZSBTIG1heF9MKFMgYSxUIGIpewogIHJldHVybiBhPj1iP2E6YjsKfQojZGVmaW5lIG1haW4gZHVtbXlfbWFpbgppbnQgbWFpbigpewogIHJldHVybiAwOwp9CiN1bmRlZiBtYWluCmNsYXNzIFNvbHV0aW9uewogIHB1YmxpYzoKICBpbnQgZ2V0TWF4aW11bUdlbmVyYXRlZChpbnQgbil7CiAgICBpbnQgaTsKICAgIGludCBhcnJbMTAxXSA9IHswLCAxfTsKICAgIGZvcihpPSgyKTtpPChuKzEpO2krKyl7CiAgICAgIGlmKGklMil7CiAgICAgICAgYXJyW2ldID0gYXJyW2kvMl0rIGFycltpLzIrMV07CiAgICAgIH0KICAgICAgZWxzZXsKICAgICAgICBhcnJbaV0gPSBhcnJbaS8yXTsKICAgICAgfQogICAgfQogICAgewogICAgICBpbnQgUTVWSkwxY1M7CiAgICAgIGludCBlOThXSENFWTsKICAgICAgaWYobisxPT0wKXsKICAgICAgICBlOThXSENFWSA9IDA7CiAgICAgIH0KICAgICAgZWxzZXsKICAgICAgICBlOThXSENFWSA9IGFyclswXTsKICAgICAgICBmb3IoUTVWSkwxY1M9KDEpO1E1VkpMMWNTPChuKzEpO1E1VkpMMWNTKyspewogICAgICAgICAgZTk4V0hDRVkgPSBtYXhfTChlOThXSENFWSwgYXJyW1E1VkpMMWNTXSk7CiAgICAgICAgfQogICAgICB9CiAgICAgIHJldHVybiBlOThXSENFWTsKICAgIH0KICB9Cn0KOwovLyBjTGF5IHZhcnNpb24gMjAyMDExMDItMQoKLy8gLS0tIG9yaWdpbmFsIGNvZGUgLS0tCi8vICNkZWZpbmUgbWFpbiBkdW1teV9tYWluCi8vIHt9Ci8vICN1bmRlZiBtYWluCi8vIAovLyBjbGFzcyBTb2x1dGlvbiB7Ci8vIHB1YmxpYzoKLy8gICBpbnQgZ2V0TWF4aW11bUdlbmVyYXRlZChpbnQgbikgewovLyAgICAgaW50IGFyclsxMDFdID0gezAsIDF9OwovLyAgICAgcmVwKGksMixuKzEpIGFycltpXSA9IGFycltpLzJdIGlmW2klMiwgKyBhcnJbaS8yKzFdXTsKLy8gICAgIHJldHVybiBtYXgoYXJyKG4rMSkpOwovLyAgIH0KLy8gfTsK