#include <stdio.h>
#include <stdlib.h>
void reverse(const int* const restrict v1, int* restrict v2, int size)
{
for (int i = 0; i < size; i++) {
v2[size-i-1] = v1[i];
}
}
int main (int argc, char *argv[])
{
int size, *v1, *v2;
size = 1000000;
v1
= malloc(sizeof(int) * size
); v2
= malloc(sizeof(int) * size
); for (int i = 0; i < size; i++) {
v1[i] = i;
}
reverse(v1, v2, size);
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCnZvaWQgcmV2ZXJzZShjb25zdCBpbnQqIGNvbnN0IHJlc3RyaWN0IHYxLCBpbnQqIHJlc3RyaWN0IHYyLCBpbnQgc2l6ZSkKewogICAgZm9yIChpbnQgaSA9IDA7IGkgPCBzaXplOyBpKyspIHsKICAgICAgICB2MltzaXplLWktMV0gPSB2MVtpXTsKICAgIH0KfQoKaW50IG1haW4gKGludCBhcmdjLCBjaGFyICphcmd2W10pCnsKICAgIGludCBzaXplLCAqdjEsICp2MjsKICAgIHNpemUgPSAxMDAwMDAwOwogICAgdjEgPSBtYWxsb2Moc2l6ZW9mKGludCkgKiBzaXplKTsKICAgIHYyID0gbWFsbG9jKHNpemVvZihpbnQpICogc2l6ZSk7CiAgICBmb3IgKGludCBpID0gMDsgaSA8IHNpemU7IGkrKykgewogICAgICAgIHYxW2ldID0gaTsKICAgIH0KICAgIHJldmVyc2UodjEsIHYyLCBzaXplKTsKICAgIHByaW50ZigiJWQiLCB2MlswXSk7CiAgICByZXR1cm4gMDsKfQ==