# include # include # include using namespace std; //FILE *f = freopen("compress.in", "r" , stdin); int n, m; char s[20]; void rez(char s[]){ int number1, number2; int total, total1, total2; printf("#"); for (int i=1; i= '0' && s[i] <= '9') number1 = s[i] - '0'; else number1 = s[i] - 'A' + 10; if (s[i+1] >= '0' && s[i+1] <= '9') number2 = s[i+1] - '0'; else number2 = s[i+1] - 'A' + 10; total = number1 * 16 + number2; total1 = number1 * 16 + number1; total2 = number2 * 16 + number2; if (number1 > number2){ int aux = total1; total1 = total2; total2 = aux; aux = s[i]; s[i] = s[i+1]; s[i+1] = aux; aux = number1; number1 = number2; number2 = aux; } while (total1 < total){ number1 ++; total1 = number1 * 16 + number1; } number1 --;total1 = number1 * 16 + number1; while (total2 > total){ number2 --; total2 = number2 * 16 + number2; } number2 ++;total2 = number2 * 16 + number2; if (number1 < 10){ s[i] = '0' + number1; } else s[i] = 'A' + number1 - 10; if (number2 < 10){ s[i+1] = '0' + number2; } else s[i+1] = 'A' + number2 - 10; if (abs(double(total1 - total)) <= abs(double(total2 - total))){ printf("%c", s[i]); } else{ printf("%c", s[i+1]); } } } } void read(){ scanf("%d %d", &n, &m); for (int i=1; i<=n; i++){ for (int j=1; j<=m; j++){ scanf("%s", s); rez(s); if (j != m){ printf(" "); } } printf("\n"); } } int main(){ read(); return 0; }