月赛题解T2T3T4

T2

没次用木棒搭金字塔,然后其他都弄最小的金字塔
核心代码

s=6,cnt=0;
while(n>=s)
{
	n-=s;
	cnt++;
	s*=3;
}
cout<<cnt+n/6<<" "<<n%6<<"\n";

T3

最大的是全 1
最小的是先全弄2,多余的弄1
但是注意要先输出1,再输出2

T4

首先最大的能取到 \sqrt{n} ,然后从上往下搜索(这很重要),搜到最小多少个。
然后再搜一遍,计入方案,然后记得这里要倒序,然后排序,搞定

%%%orz