一道简单的C++编程题

2025-01-05 06:21:22
推荐回答(2个)
回答1:

#include
using namespace std;
int main()
{
int time,n,max,i;
cin>>time>>n;
float *a=new float[n+1];
float (*p)[2]=new float[n][2];
for(i=0;i {
cin>>p[i][0]>>p[i][1];
a[i]=p[i][1]/p[i][0];
}
a[n]=0;
max=n;
for(i=0;i {if(p[i][0]>time)
continue;
if(a[i]>a[max]) max=i;
}
if(max==n)
{cout<<"没有可行方案";return 0;}
if(time-p[max][0]*n<=0)
{
cout<

回答2:

经典背包问题 不是贪心