#include <stdio.h>
int paths(int x, int y) {
if (x == 0 || y == 0) {
return 1;
}
return paths(x - 1, y) + paths(x, y - 1);
}
int main(void) {
int x, y;
printf("(0,0)から(%d,%d)までの最短経路数は %d です。\n", x
, y
, paths
(x
, y
));
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CgppbnQgcGF0aHMoaW50IHgsIGludCB5KSB7CiAgICBpZiAoeCA9PSAwIHx8IHkgPT0gMCkgewogICAgICAgIHJldHVybiAxOwogICAgfQogICAgcmV0dXJuIHBhdGhzKHggLSAxLCB5KSArIHBhdGhzKHgsIHkgLSAxKTsKfQoKaW50IG1haW4odm9pZCkgewogICAgaW50IHgsIHk7CiAgICAKICAgIHNjYW5mKCIlZCIsICZ4KTsKICAgIHNjYW5mKCIlZCIsICZ5KTsKICAgIAogICAgcHJpbnRmKCIoMCwwKeOBi+OCiSglZCwlZCnjgb7jgafjga7mnIDnn63ntYzot6/mlbDjga8gJWQg44Gn44GZ44CCXG4iLCB4LCB5LCBwYXRocyh4LCB5KSk7CiAgICAKICAgIHJldHVybiAwOwp9