#include #include #include using namespace std; int convert(int i, int j, string hex) { int val = 0; if(hex[i] >= '0' && hex[i] <= '9') { val += 16 * (hex[i] - '0'); } else { val += 16 * (hex[i] - 'A' + 10); } if(hex[j] >= '0' && hex[j] <= '9') { val += (hex[j] - '0'); } else { val += (hex[j] - 'A' + 10); } return val; } char findd(int i, int j, string hex) { char ans; int decVal = convert(i, j, hex); int minn = 1 << 30; for(int k = 0; k < 16; ++k) { if(k < 10) { hex[i] = '0' + k; hex[j] = '0' + k; } else { hex[i] = 'A' + k - 10; hex[i] = 'A' + k - 10; } int newVal = convert(i, j, hex); if(abs(newVal - decVal) < minn) { minn = abs(newVal - decVal); ans = hex[i]; } } return ans; } int main() { //freopen("txt.in", "r", stdin); string hex; int n , m; cin >> n >> m; for(int i = 1; i <= n; ++i) { for(int j = 1; j <= m; ++j) { cin >> hex; cout << "#" << findd(1, 2, hex) << findd(3, 4, hex) << findd(5, 6, hex) << " "; } cout << "\n"; } return 0; }