用C语言编程骨牌铺法,带解析,在线等

有1*n的一个长方形,用一个1*1、1*2、1*3的骨牌铺满方格。例如n=3时为1*3的方格。此时用1*1、1*2、1*3的骨牌铺满方格,共有四种铺法。... 有1*n的一个长方形,用一个1*1、1*2、1*3的骨牌铺满方格。例如n=3时为1*3的方格。此时用1*1、1*2、1*3的骨牌铺满方格,共有四种铺法。 展开
 我来答
百度网友d580670
2013-09-07 · TA获得超过1984个赞
知道大有可为答主
回答量:2054
采纳率:82%
帮助的人:747万
展开全部
#define N 3
int tp[N] = {3,2,1};
int num[N];
void st(int s, int t)
{
  int i;
  int c = 0;
  if (t == 0) return;
  while (t >= 0)
  {
    num[s] =  c++;
    if (s < N)
    {
      st(s+1, t);
    }
    if (t == 0)
    {
      for (i=0; i<N;i++)
      {
        if (i <= s)printf("%d ", num[i]);
        else printf("0 ");
      }
      printf("\n");
      break;
    }
    t -= tp[s];
  }
}
int main()
{
  int m;
  scanf("%d", &m);
  if (m)st(0, m);
  getch();
  return 0;
}
偏执的小偷
2013-09-12
知道答主
回答量:13
采纳率:0%
帮助的人:4万
展开全部
这个太难了,我也不会
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式