这道题可以用 DPDPDP 求解,设 fff ( sss , 000 )为 s=0s=0s=0 的方案数, fff ( sss , 111 )为 sss 为 111 的方案数,则
fff ( a+ba+ba+b , 000 ) =f=f=f ( aaa , 000 )* fff ( bbb , 000 );
fff ( a+ba+ba+b , 111 ) =f=f=f ( aaa , 000 )* fff ( bbb , 111 ) +f+f+f ( aaa , 111 )* fff ( bbb , 000 ) +f+f+f ( aaa , 111 )* fff ( bbb , 111 );
fff ( aaa * bbb , 000 ) =f=f=f ( aaa , 000 )* fff ( bbb , 000 ) +f+f+f ( aaa , 111 )* fff ( bbb , 000 ) +f+f+f ( aaa , 000 )* fff ( bbb , 111 );
fff ( aaa * bbb , 111 ) =f=f=f ( aaa , 111 )* fff ( bbb , 111 )。
接下来就是一个类似于树形 DPDPDP 的过程了。在这里 DPDPDP 的是表达式树。