📄 有限期任务安排none.cpp
字号:
#include <iostream.h>
void main(void)
{
void fmerge(int x[],int y[],int n);
int num;
cout<<"请输入任务数:";
cin>>num;
int *a=new int[num];
int *b=new int[num];
cout<<"请输入各任务期限:";
for(int i=0;i<num;i++)
cin>>a[i];
cout<<"请输入各任务的获利:";
for(i=0;i<num;i++)
cin>>b[i];
fmerge(a,b,num);
// for(i=0;i<num;i++)
// cout<<a[b[i]];
}
void fmerge(int x[],int y[],int n)
{
int *z=new int[n];
int max(-1),min,temp1(-1),temp2(-1),total(0);
for(int i=0;i<n;i++)
{
if(max<x[i]) max=x[i];
z[i]=y[i];
}
cout<<"应安排的任务有:";
for(i=max;i>0;i--)
{
min=-1;
for(int j=0;j<n;j++)
{
if(min<z[j]&&x[j]>=i)
{
temp1=j;
min=z[j];
}
}
if(temp1!=temp2)
{
cout<<"第"<<temp1+1<<"个 ";
temp2=temp1;
z[temp1]=-1;
total+=y[temp1];
}
}
cout<<endl<<"总共可获利"<<total<<endl;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -