C++智能冲浪
# include & ltiostream & gt
# include & ltfstream & gt
# include & lt算法& gt
使用命名空间std
结构谜语{
int时间;
int money
};
结构gt{
布尔算子()(谜语& amp奥普,谜语和。opr){
return opl.money & gtopr.money
}
};
int main()
{
int m,n;
ifstream fin(" riddle . in ");
fin & gt& gtm & gt& gtn;
谜语*谜语=新谜语[n];
for(int I = 0;我& ltn;++i) {
fin & gt& gt谜语[我]。时间;
}
for(int I = 0;我& ltn;++i) {
fin & gt& gt谜语[我]。钱;
}
sort(谜语,谜语+n,gt());
int * rid order = new int[n];
for(int I = 0;我& ltn;++i) {
rid order[I]= 0;
}
for(int I = 0;我& ltn;++i) {
int j;
for(j =谜语[i]。时间-1;j & gt= 0 & amp& ampridorder[j]!=0;- j) {}
if(j & gt;= 0)ridorder[j]= 1;
else m -=谜语[i]。钱;
}
cout & lt& ltm & lt& ltendl
}