NOJ1155 A – 买书

#include<stdio.h>
/*
Description:

Lapro又要买书了,他认真地列出了书单,并且书单上每种书只买一本,他希望能够花最少的钱买到所有想买的书。
于是他对各家书店的每种书的价格经行了一番调查,并做出表格。由于数据量太大,他希望你能帮助他编写程序,并且告诉他买到书单上所有的书所需要的最少的钱数。

Input:

第一行两个整数:N,M(1<=N,M<=100),N表示要买的书的数量,书分别以1,2,3,……N编号,M表示调查的书店的个数,这些店以1,2,……M编号。
    接下来M行,每行N个实数,第i行第j列表示在第i家书店买到第j本书所需要花费的钱数。

Output:
 一个实数,表示买到所有书最少要花多少钱,结果保留到2位小数。
*/

int main()
{
    int N, M;
    scanf("%d %d", &N, &M);
    float** martix = calloc(M, sizeof(float*));
    for (int a = 0; a < M; a++)
        martix[a] = calloc(N, sizeof(float));

    for (int a = 0; a < M; a++)
    {
        for (int b = 0; b < N; b++)
        {
            scanf("%f", &martix[a][b]);
        }
    }
    float min = 9999999;
    float count = 0;
    for (int b = 0; b < N; b++)
    {
        min = 9999999;
        for (int a = 0; a < M; a++)
        {
            if (martix[a][b] < min)
                min = martix[a][b];
        }
        count += min;
    }
    printf("%.2f", count);
    return 0;
}

NOJ1155 A – 买书》有1个想法

发表评论

邮箱地址不会被公开。