Problem 1007 - Feeding Animals(I)

Posted on 2011-09-22 00:52 kalvinyZhang 阅读(135) 评论(0)  编辑 收藏 引用 所属分类: OJ
贪心算法,我不知道呀,直接就上了,先这样刷着吧,以后可能就会熟悉。要学习的点是实现多维数组的行和列分别排序
#include <stdio.h>
#define MAX 10000

int main()
{
    
int n, i, j, min, sum = 0;
    
int s[8][MAX];
    
int t[MAX];

    scanf(
"%d"&n);

    
for (i = 0; i <= 7; i++) {
        
for (j = 0; j < n; j++)
            scanf(
"%d"&s[i][j]);
    }
    min 
= s[0][0];
    
for (j = 0; j < n; j++) {
        
for (i = 0; i < 8; i++) {        //寻找二维数组每列的最小值
            if (s[i][j] <= min) {
                min 
= s[i][j];
                t[j] 
= min;
            }
        }
        min 
= s[0][j+1];            //每一列定位的最小值,就是每列的第一个元素
    }

    
for (i = 0; i < n; i++) {
        sum 
= sum + t[i];
    }
    printf(
"%d\n", sum);
    
return 0;
}

posts - 0, comments - 0, trackbacks - 0, articles - 9

Copyright © kalvinyZhang