| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 840 人关注过本帖
标题:拉丁正方形
取消只看楼主 加入收藏
fuyikai7
Rank: 2
等 级:论坛游民
帖 子:15
专家分:18
注 册:2012-11-22
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:5 
拉丁正方形
就是求拉丁正方形个数
问题是:
一种正方形的数字编排 1 2 3 4 5 2 1 4 5 3 3 4 5 1 2 4 5 2 3 1 5 3 1 2 4 是一个5*5的拉丁正方形,每个1到5的整数在每行每列都出现且出现一次。写个程序计算N*N的的拉丁正方形的总数且要求第一行是: 1 2 3 4 5.......N 你的程序应该算称呼任意的从2到7的N(Your program should work for any N from 2 to 7)

输入
一行包含一个整数N

输出
只有一行没,表示拉丁正方形的个数,且拉丁正方形的第一行为 1 2 3 . . . N.

样例输入
5
样例输出
1344
然后我VC++6.0编的代码 求各位大神修改
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define N 100
int main()
{
    int a[N],i,j,k,t,s[N][N],*p,l,m,n,w=0;
    scanf("%d",&l);
    for(i=1;i<=l;i++)
    {
        a[i-1]=i;
    }
    for(i=1;i<=l;i++)
    {
        s[1][i]=i;
    }
    loop: ;
    p=a;
    for(m=2,n=1;m<=l,n<=l;n++)
    {
        for(i=1,j=1;i<m;j++)
        {
            for(;p<p+l;p++)
            {
                if(*p!=s[i][j])
                {
                    s[m][n]=*p;
                }
            }
            if(j==l)
            {
                i++;
            }
        }
        m++;
    }
    w++;
    for(i=1;i<=l;i++)
    {
        a[i-1]=i+1;
        if(a[i-1]>l)
        {
            a[i-1]=a[i-1]-l;
        }
    }
    if(a[0]!=1)
    {
        goto loop;
    }
    printf("%d\n",w);
    return 0;
}
搜索更多相关主题的帖子: include should 正方形 
2012-11-22 13:04
fuyikai7
Rank: 2
等 级:论坛游民
帖 子:15
专家分:18
注 册:2012-11-22
收藏
得分:0 
那怎么改呢。。我是新手 指针没用过

[ 本帖最后由 fuyikai7 于 2012-11-22 15:17 编辑 ]
2012-11-22 15:13
fuyikai7
Rank: 2
等 级:论坛游民
帖 子:15
专家分:18
注 册:2012-11-22
收藏
得分:0 
谁帮忙解决下。。。
2012-11-22 17:36
fuyikai7
Rank: 2
等 级:论坛游民
帖 子:15
专家分:18
注 册:2012-11-22
收藏
得分:0 
学校出了一学期的题 做着做着就碰到了 然后就这样。。
2012-11-22 20:35
fuyikai7
Rank: 2
等 级:论坛游民
帖 子:15
专家分:18
注 册:2012-11-22
收藏
得分:0 
看着看着发现我那个循环的确不能用 搜索的确没学过。。。 看着你这个学喽。。。问一下 1<<j 1<<i p|=(1<<j)是什么意思 别的应该都还看得懂


[ 本帖最后由 fuyikai7 于 2012-11-23 13:12 编辑 ]
2012-11-23 12:37
fuyikai7
Rank: 2
等 级:论坛游民
帖 子:15
专家分:18
注 册:2012-11-22
收藏
得分:0 
原理懂了 但二进制位运算果然蛋疼 自己写现在肯定搞不出来。。
2012-11-23 16:53
快速回复:拉丁正方形
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026486 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved