#include<stdio.h>
#include<string.h>
int main()
{
struct milk \\定义结构体变量
{
char name[100]; \\牛奶名
int P; \\价格
int V; \\容量
}milk[100]; \\定义一个数组存放结构体变量
int t,n,i,day,k;
double a[100],minn;
scanf("%d",&t);
while(t--)
{
minn=99999; \\赋予minn一个足够大的初值
scanf("%d",&n);
for(i=0;i<n;i++)
{
scanf("%s%d%d",milk[i].name,&milk[i].P,&milk[i].V); \\输入牛奶的名字、价格、容量
if(milk[i].V>=1000) \\牛奶容量大于1000时只能喝5天
a[i]=1.0*milk[i].P/5; \\ a[i]中存放每一天的花费
else if(milk[i].V>=200)
{
day=1.0*milk[i].V/200; \\牛奶能喝的天数,下面a[i]中存放每一天的花费
a[i]=1.0*milk[i].P/day;
}
else
a[i]=0;
}
for(i=0;i<n;i++) \\遍历得到每一天的最少花费
{
if(a[i]<minn&&a[i]!=0)
{
minn=a[i];
k=i; \\将最小花费的i赋值给k
}
}
for(i=0;i<n;i++) \\遍历一遍a[i]
{
if(a[i]==a[k]) \\如果每日价格相同,选择容量大的牛奶
{
if(milk[i].V>milk[k].V)
k=i;
}
}
printf("%s\n",milk[k].name);
}
return 0;
}
杭电OJ1070详解 易懂!纯C写法
最新推荐文章于 2021-08-20 19:37:13 发布