hdu1070
http://acm.hdu.edu.cn/showproblem.php?pid=1070
感觉没错呀,网上搜了一下源代码,只是比俺多了一步,但是认为题目中的都说了只有5天,一天200ml不就说明过1000ml直接可以跳过了,但是这样写发现ac不了,大家看看呗,谢了
#include <stdio.h>
#include <stdlib.h>
struct milk
{
char a[100];
int p;
int v;
}io[100];
int main()
{
int t,n,i,s[100],k,max;
scanf("%d",&t);
while(t--)
{
k=0;
scanf("%d",&n);
memset(s,0,100);
for(i=0;i<n;i++)
{
scanf("%s",&io[i].a);
getchar();//吸收字符
scanf("%d %d",&io[i].p,&io[i].v);
if(io[i].v<200||io[i].v>1000)
continue;//直接跳出下面的不用比较了,也就是只有一个正确答案
//脑子太死板了
s[i]=io[i].v/200;
if(io[k].p*s[i]>io[i].p*s[k]||(io[k].p*s[i]==io[i].p*s[k]&&io[i].v>io[k].v))
k=i;
}
printf("%s",io[k].a);
printf("\n");
}
return 0;
}
[解决办法]
超过1000ml也不能直接排除吧。如果有一个牌子,1100ml,19元。那就应该买这个。