#include #include #include #include #include using namespace std; int countt; long long minn = 1000000005; int answer[15]; int ansEnd = 14; int numSize; int minSize; int num[10]; int minimum[10]; void sum(int pos, short pren){ if(pos>=numSize && pren==0) return; answer[ansEnd-pos]+=num[pos] + pren; pren = answer[ansEnd-pos]/10; answer[ansEnd-pos]%=10; pos+=1; sum(pos, pren); return; } void subtr(int pos, short pren){ if(pos>=minSize && pren==0) return; if(answer[ansEnd-pos]-pren < minimum[pos]){ answer[ansEnd-pos]+=10; answer[ansEnd-pos]-=minimum[pos]+pren; pren = 1; } else{ answer[ansEnd-pos]-=minimum[pos]+pren; pren = 0; } pos+=1; subtr(pos, pren); return; } int main (){ freopen ("evensum.in", "r", stdin); freopen ("evensum.out", "w" , stdout); int n; cin >> n; for(int i=0; i> k; long long oldk = k; for(int i=0; i<10; i++){ num[i]=0; } int numEnd=0; while(k>0){ num[numEnd]=k%10; k/=10; numEnd++; } numSize=numEnd; sum(0, 0); if(oldk%2==1){ countt++; minn = min(minn, oldk); } } if(countt%2==1){ int minEnd=0; while(minn>0){ minimum[minEnd]=minn%10; minn/=10; minEnd++; } minSize=minEnd; subtr(0, 0); } bool flag = false; for(int i=0; i<15; i++){ if(answer[i]>0) flag = true; if(flag) cout << answer[i]; } cout << endl; return 0; }