#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个想法