#include <stdio.h>
#include <stdint.h>
uint8_t i=0; // 0 1 3 7 15
uint8_t mass[10] = {0b00000000, 0b00000001, 0b00000011, 0b00000111, 0b00001111,
// 31 63 127 255 255
0b00011111, 0b00111111, 0b01111111, 0b11111101, 0b10111111
};
uint8_t reverse (uint8_t d)
{
uint8_t a, b;
static const uint8_t revTable[] = {0, 8, 4, 12, 2, 10, 6, 14, 1, 9, 5, 13, 3, 11, 7, 15};
a = d >> 4;
a = revTable[a];
b = d & 0x0F;
b = (revTable[b])<<4;
return (b | a);
}
int main(void) {
// your code goes here
for(i=0; i<(sizeof(mass)/2); i++){
uint8_t q = mass[i];
mass[i] = mass[sizeof(mass)-1-i];
mass[sizeof(mass)-1-i] = q;
}
for(i=0; i<10; i++){
mass[i] = reverse (mass[i]);
}
for(i=0; i<10; i++){
}
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRpbnQuaD4KdWludDhfdCBpPTA7CQkvLyAwCQkJMQkJCTMJCQk3CQkJMTUKdWludDhfdCBtYXNzWzEwXSA9IHswYjAwMDAwMDAwLCAwYjAwMDAwMDAxLCAwYjAwMDAwMDExLCAwYjAwMDAwMTExLCAwYjAwMDAxMTExLAovLwkJCTMxCQkJNjMJCQkxMjcJCQkyNTUJCQkyNTUKCQkwYjAwMDExMTExLCAwYjAwMTExMTExLCAwYjAxMTExMTExLCAwYjExMTExMTAxLCAwYjEwMTExMTExCn07CnVpbnQ4X3QgcmV2ZXJzZSAodWludDhfdCBkKQp7Cgl1aW50OF90IGEsIGI7CglzdGF0aWMgY29uc3QgdWludDhfdCByZXZUYWJsZVtdID0gezAsIDgsIDQsIDEyLCAyLCAxMCwgNiwgMTQsIDEsIDksIDUsIDEzLCAzLCAxMSwgNywgMTV9OwoJYSA9IGQgPj4gNDsKCWEgPSByZXZUYWJsZVthXTsKCWIgPSBkICYgMHgwRjsKCWIgPSAocmV2VGFibGVbYl0pPDw0OwoJCglyZXR1cm4gKGIgfCBhKTsKfQppbnQgbWFpbih2b2lkKSB7CgkvLyB5b3VyIGNvZGUgZ29lcyBoZXJlCglmb3IoaT0wOyBpPChzaXplb2YobWFzcykvMik7IGkrKyl7CgkJdWludDhfdCBxID0gbWFzc1tpXTsKCQltYXNzW2ldID0gbWFzc1tzaXplb2YobWFzcyktMS1pXTsKCQltYXNzW3NpemVvZihtYXNzKS0xLWldID0gcTsKCX0KCWZvcihpPTA7IGk8MTA7IGkrKyl7CgkJbWFzc1tpXSA9IHJldmVyc2UgKG1hc3NbaV0pOwoJfQogCiAKCWZvcihpPTA7IGk8MTA7IGkrKyl7CgkJcHJpbnRmKCIlZCIsIG1hc3NbaV0pOwoJCXByaW50ZigiLCIpOwoJfQoJcmV0dXJuIDA7Cn0K