superJing


私信TA

用户名:9852174563

访问量:2465

签 名:

9852174563

等  级
排  名 2530
经  验 2181
参赛次数 1
文章发表 4
年  龄 0
在职情况 学生
学  校 西北农林科技大学
专  业

  自我简介:

TA的其他文章

//代码如下

#include <stdio.h>

#include <stdlib.h>


int a[8][8];

int add[8];//用来存放每个矩阵各列和

int min=0;

int tag=0;

int getMax(int n){//得到最大的列值

    int max=add[0];

    int i;

    for(i=1;i<n;i++)

        max=add[i]>max?add[i]:max;

    return max;

}


void cal(int m,int n){

    int i,j;

    if(m==n-1){

        for(i=0;i<n;i++){

            for(j=0;j<n;j++)

                add[j]+=a[m][(i+j)%n];

            int t=getMax(n);

            if(tag==0)

                min=t,tag=1;

            else

                min=min<=t?min:t;

            for(j=0;j<n;j++)

                add[j]-=a[m][(i+j)%n];

        }

    }

    else{

        for(i=0;i<n;i++){

            for(j=0;j<n;j++)

                add[j]+=a[m][(i+j)%n];

            cal(m+1,n);

            for(j=0;j<n;j++)

                add[j]-=a[m][(i+j)%n];

        }

    }

    return ;

}

int main()

{

    int n;

    while(scanf("%d",&n)){

        if(n==-1)break;

        memset(add,n,0);

        int i,j;

        for(i=0;i<n;i++)

            for(j=0;j<n;j++)

                scanf("%d",&a[i][j]);

        for(i=0;i<n;i++)

            add[i]=a[0][i];

        cal(1,n);

        printf("%d\n",min);

        tag=0;

    }

    return 0;

}


 

0.0分

0 人评分

看不懂代码?想转换其他语言的代码? 或者想问其他问题? 试试问问AI编程助手,随时响应你的问题:

编程语言转换

万能编程问答  

代码解释器

代码纠错

SQL生成与解释

  评论区