#include #include #include #include #include #include #include #include #include #include #include #include using namespace std; int solve(string s,int na=0){ if(s.size()<3){ return 0; } vector score; int size=s.size(); for(int a=na;a d={s[a],s[b],s[c],0}; bool iscww=false; if(d[0]!='0'&&d[0]!=d[1]&&d[0]!=d[2]&&d[1]==d[2]){ iscww=true; } if(iscww){ string t(d.data()); //printf("a=%d,b=%d,c=%d,slen=%lu,s=%s,t=%s\n",a,b,c,score.size(),s.c_str(),t.c_str()); int ts=stoi(t); string ns(s); ns.erase(c,1); ns.erase(b,1); ns.erase(a,1); score.push_back(ts+solve(ns,a)); } } } } if(score.size()==0) return 0; return *max_element(score.begin(),score.end()); } int main(){ char n[24]; -scanf("%s",n); string m=n; int score=solve(m); printf("%d\n",score); return 0; }