1.a->b
意味着(*a).b
。
2.对比两个函数
bool cmp (stu a,stu b)
{
if(a.sum==b.sum)
{
if(a.c==b.c)
{
return a.num>b.num;
}
else return a.c>b.c;
}
else return a.sum >b.sum;
}
bool cmp(stu a,stu b)
{
if(a.sum>b.sum) return 1;//总分大于b就返回1
else if(a.sum<b.sum) return 0;//否则返回0
else//相等
{
if(a.c>b.c) return 1;//比较语文
else if(a.c<b.c) return 0;
else//语文也相等
{
if(a.num>b.num) return 0;//比较编号
else return 1;
}
}
}
3.小错题
for(int g=1;g<=groumax;g++)
{
for(int v=V;v>=0;v--)
{
for(int i=1;i<=a[g][0];i++)
{
if(v>=v1[a[g][i]]) //不要写进for里,会导致嵌套调用(坑了好久)
{
int tmp=a[g][i];
f[v]=max(f[v],f[v-v1[tmp]]+c[tmp]);
}
}
}
}