#include #include #include #include #include #include #define MP make_pair using ll = long long; using namespace std; int main() { int T; cin >> T; vectorS(T); getline(cin,S[0]); for(int i=0; i < T; i++) getline(cin, S[i]); for(int i=0; i < T; i++){ int ind = 0; int maxind = 0; int cnt = 0; int maxcnt = 0; for(int j=0; j < S[i].size(); j++){ if(S[i][j] == '0' || S[i][j] == '1' || S[i][j] == '2' || S[i][j] == '3' || S[i][j] == '4' || S[i][j] == '5' || S[i][j] == '6' || S[i][j] == '7' || S[i][j] == '8' || S[i][j] == '9'){ if(cnt == 0) ind = j; cnt++; }else{ if(cnt >= maxcnt){ maxcnt = cnt; maxind = ind; } cnt = 0; } } if(cnt >= maxcnt){ maxcnt = cnt; maxind = ind; } //cout << maxcnt << endl; //cout << maxind << endl; if(maxind >= 0 && maxcnt > 0){ if(S[i][maxind+maxcnt-1] != '9'){ int last_num = (int)(S[i][maxind+maxcnt-1]); last_num++; S[i][maxind+maxcnt-1] = (char)(last_num); }else if(S[i][maxind+maxcnt-1] == '9'){ for(int k=maxind+maxcnt-1; k >= maxind; k--){ int n = (int)S[i][k]; //cout << S[i][k] << endl; //cout << n << endl; if(k == maxind && n == (int)'9'){ S[i][k] = '0'; string news(S[i].size()+1, 'a'); for(int l=0; l < maxind; l++) news[l] = S[i][l]; news[maxind] = '1'; for(int l=maxind; l < S[i].size(); l++) news[l+1] = S[i][l]; S[i] = news; }else if(n != (int)'9'){ n++; S[i][k] = (char)n; break; }else{ S[i][k] = '0'; } } } } cout << S[i] << endl; } return 0; }