#include <stdio.h>
int func(int x, int y, int z){
static int call = 0;
if (x == 0 && y == 0 && z == 0){
return call;
}
call++;
int xp = 1, yp = 1;
for (int i = 0; i < z; i++){
xp *= x;
yp *= y;
}
return xp + yp;
}
int main(void){
for (int i = 1; i < 5; i++){
func(i, i, i);
}
printf("%d\n", func
(0, 0, 0)); return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgZnVuYyhpbnQgeCwgaW50IHksIGludCB6KXsKICAgIHN0YXRpYyBpbnQgY2FsbCA9IDA7CgogICAgaWYgKHggPT0gMCAmJiB5ID09IDAgJiYgeiA9PSAwKXsKICAgICAgICByZXR1cm4gY2FsbDsKICAgIH0KCiAgICBjYWxsKys7CiAgICBpbnQgeHAgPSAxLCB5cCA9IDE7CiAgICBmb3IgKGludCBpID0gMDsgaSA8IHo7IGkrKyl7CiAgICAgICAgeHAgKj0geDsKICAgICAgICB5cCAqPSB5OwogICAgfQogICAgcmV0dXJuIHhwICsgeXA7Cn0KCmludCBtYWluKHZvaWQpewogICAgZm9yIChpbnQgaSA9IDE7IGkgPCA1OyBpKyspewogICAgICAgIGZ1bmMoaSwgaSwgaSk7CiAgICB9CiAgICBwcmludGYoIiVkXG4iLCBmdW5jKDAsIDAsIDApKTsKICAgIHJldHVybiAwOwp9Cg==