#include <bits/stdc++.h>
using namespace std;
bool fun(int mid, vector<int>arr,int m){
vector<int>a(arr.size(),-1);
for(int i=0;i<arr.size();i++){
a[i]=(i+1)*mid+arr[i];
}
sort(a.begin(),a.end());
int sum=0;
for(int i=0;i<mid;i++){
sum+=a[i];
}
if(sum<=m)return true;
return false;
}
int main()
{
vector<int>arr={4, 3, 2, 1};
sort(arr.begin(),arr.end());
int n=arr.size();
int max_score=33;
int ans=0;
int l=1;
int h=n;
while(l<=h){
int mid=l+(h-l)/2;
//cout<<"mid"<<mid<<endl;
if(fun(mid,arr,max_score)){
ans=mid;
l=mid+1;
}
else{
h=mid-1;
}
//cout<<"ans"<<ans<<endl;
}
cout<<ans<<endl;
return 0;
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CmJvb2wgZnVuKGludCBtaWQsIHZlY3RvcjxpbnQ+YXJyLGludCBtKXsKICAgICB2ZWN0b3I8aW50PmEoYXJyLnNpemUoKSwtMSk7CiAgICBmb3IoaW50IGk9MDtpPGFyci5zaXplKCk7aSsrKXsKICAgICAgICBhW2ldPShpKzEpKm1pZCthcnJbaV07CiAgICB9CiAgICBzb3J0KGEuYmVnaW4oKSxhLmVuZCgpKTsKICAgIGludCBzdW09MDsKICAgIGZvcihpbnQgaT0wO2k8bWlkO2krKyl7CiAgICAgICAgc3VtKz1hW2ldOwogICAgfQogICBpZihzdW08PW0pcmV0dXJuIHRydWU7CiAgIHJldHVybiBmYWxzZTsKfQppbnQgbWFpbigpCnsKICAgIHZlY3RvcjxpbnQ+YXJyPXs0LCAzLCAyLCAxfTsKICAgIHNvcnQoYXJyLmJlZ2luKCksYXJyLmVuZCgpKTsKICAgIGludCBuPWFyci5zaXplKCk7CiAgICBpbnQgbWF4X3Njb3JlPTMzOwogICAgaW50IGFucz0wOwogICAgaW50IGw9MTsKICAgIGludCBoPW47CgogICAgd2hpbGUobDw9aCl7CiAgICAgICAgICAgaW50IG1pZD1sKyhoLWwpLzI7CiAgICAgICAgICAgLy9jb3V0PDwibWlkIjw8bWlkPDxlbmRsOwogICAgICAgICAgIGlmKGZ1bihtaWQsYXJyLG1heF9zY29yZSkpewogICAgICAgICAgICAgICBhbnM9bWlkOwogICAgICAgICAgICAgICBsPW1pZCsxOwogICAgICAgICAgIH0KICAgICAgICAgICBlbHNlewogICAgICAgICAgICAgICBoPW1pZC0xOwogICAgICAgICAgIH0KICAgICAgICAgICAvL2NvdXQ8PCJhbnMiPDxhbnM8PGVuZGw7CiAgICB9CiAgICBjb3V0PDxhbnM8PGVuZGw7CiAgICByZXR1cm4gMDsKfQ==