#include <stdio.h>
#include <stdlib.h>
#include <limits.h>
int main(int argc, char *argv[])
{
char a[100] = "Payment is COD Upon Arrival Or Cash Discount Applies";
char b[100] = "", *pa=a, *pb=b;
int ar[1 << CHAR_BIT];
int i=0;
// prep table.
for (;i<sizeof(ar)/sizeof(ar[0]);++i)
ar[i] = i;
// load translations
ar['C'] = 'b';
ar['O'] = 'a';
ar['D'] = 'l';
// TODO: load string b
// do xlat
while (*pa)
*pb++ = ar[(unsigned int)*pa++];
*pb = 0;
return EXIT_SUCCESS;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KI2luY2x1ZGUgPGxpbWl0cy5oPgoKaW50IG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkKewogICAgY2hhciBhWzEwMF0gPSAiUGF5bWVudCBpcyBDT0QgVXBvbiBBcnJpdmFsIE9yIENhc2ggRGlzY291bnQgQXBwbGllcyI7CiAgICBjaGFyIGJbMTAwXSA9ICIiLCAqcGE9YSwgKnBiPWI7CiAgICBpbnQgYXJbMSA8PCBDSEFSX0JJVF07CiAgICBpbnQgaT0wOwogICAgCiAgICAvLyBwcmVwIHRhYmxlLgogICAgZm9yICg7aTxzaXplb2YoYXIpL3NpemVvZihhclswXSk7KytpKQogICAgICAgIGFyW2ldID0gaTsKICAgIAogICAgLy8gbG9hZCB0cmFuc2xhdGlvbnMKICAgIGFyWydDJ10gPSAnYic7CiAgICBhclsnTyddID0gJ2EnOwogICAgYXJbJ0QnXSA9ICdsJzsKICAgIAogICAgLy8gVE9ETzogbG9hZCBzdHJpbmcgYgogICAgCiAgICAvLyBkbyB4bGF0CiAgICB3aGlsZSAoKnBhKQogICAgICAgICpwYisrID0gYXJbKHVuc2lnbmVkIGludCkqcGErK107CiAgICAqcGIgPSAwOwogICAgCiAgICBwcmludGYoIiVzXG4iLCBiKTsKICAgIHJldHVybiBFWElUX1NVQ0NFU1M7Cn0=