假设F(a,b,c)表示在当前拥有ABC/的数量分别为abc,那么F(a,b,c)=F(a-1,b,c)+F(a,b-1,c)+F(a,b,c-1)。
看上去很简单,实际上的操作有两个难点。
1. F(a,b,c)相当大。采用高精度加法。
2.a的取值范围相当大。只能使用char数组。
#include <cstdio>#include <string>int N;char f[61][61][61][90];void dp ();void print ( int, int, int );int main ()...{ //freopen ( "in.txt", "r", stdin ); dp (); while ( scanf ( "%d", &N ) == 1 ) ...{ //printf ( "%0.0f ", f[N][N][N] ); pr......
阅读全文