逻辑幻象


私信TA

用户名:miragelogic

访问量:27292

签 名:

稳中带皮,还有点方

等  级
排  名 264
经  验 5869
参赛次数 0
文章发表 80
年  龄 0
在职情况 学生
学  校 浙江海洋大学
专  业 机械电子工程

  自我简介:

解题思路:供参考

注意事项:

参考代码:

#include <stdio.h>
 
int a[8][8];
//int b[8];
int n;
int m=10000;
int max()
{
    int i,j,tmp,res=-1000;
    for(j=0;j<n;j++)
    {
        tmp=0;
        for(i=0;i<n;i++)
            tmp +=a[i][j];
        if(tmp>res) res=tmp;
    }
    return res;
}
 
 
void move(int i)
{
    int k,j,tmp;
    tmp=a[i][n-1];
    for(j=n-1;j>0;j--)
        a[i][j]=a[i][j-1];
    a[i][0]=tmp;
}

void glt(int i){
 if(i>0){
  int j;
     for(j=0;j<n;j++){
      glt(i-1);
      move(i);
      int t =max();
    //  printf("t=%d\n",t);
      if(t<m){
       m=t;
     //  printf("m=%d\n",m);
      }
     } 
 }
}
int main()
{
    int i,j,k;
    while(scanf("%d",&n)&&n>0)
    {
     m=10000;
     if(n==-1 || n>7){
      break;
     }
        for(i=0;i<n;i++){
            for(j=0;j<n;j++){
                scanf("%d",&a[i][j]);
                if(a[i][j] < -104 || a[i][j] > 104){
                 break;
                }
            }
        }
        glt(n-1);
        printf("%d\n",m);
    }
    return 0;
}


 

0.0分

0 人评分

  评论区

  • «
  • »