05/06/06 23:21:44
class tarai {
int x, y;
const tarai* tp;
public:
tarai(int y) : x(0), y(y), tp(0) {}
tarai(int x, int y, const tarai& t) : x(x), y(y), tp(&t) {}
int operator()() const {
if (x <= y) return y;
int z = (*tp)();
return tarai(tarai(x-1,y,*tp)(),tarai(y-1,z,tarai(x))(),tarai(z-1,x,y))();
}
};
LISPをまるで知らない俺が五分で作ったC++遅延評価版
tarai(192, 96, tarai(0))()で、0.01秒くらい?