cpp7.cpp

来自「用蛮力法解决的Acm icpc试题(求矩阵每一列列和的最小值)。」· C++ 代码 · 共 43 行

CPP
43 行
字号
#include <iostream>  

using namespace std;  

int mat[10][10], n, Sum[10][10];  
int Min;
void dfs (int d)  
{  
    for (int i = 0; i < n; i++)  
    {  
        for (int j = 1; j <= n; j++) 
            Sum[d][j] = Sum[d - 1][j] + mat[d][(j + i) % n + 1];  
        if (d == n) 
        { 
            int Max = 0; 
            for (int i = 1; i <= n; i++) 
                if (Max < Sum[n][i]) 
                    Max = Sum[n][i]; 
            if (Max < Min) 
                Min = Max; 
            return ; 
        } 
        else 
            dfs (d + 1);  
    }  
    return ; 
} 
int main ()  
{  
    while (scanf ("%d", &n) && n != -1)  
    {  
        for (int i = 1; i <= n; i++)  
            Sum[0][i] = 0;  
        for (i = 1; i <= n; i++)  
            for (int j = 1; j <= n; j++)  
                scanf ("%d", &mat[i][j]);  
        Min = 10000000;  
        dfs (1);  
        printf ("%d\n", Min);  
    }  
    return 0;  
} 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?