贪心算法解决活动选择问题

//贪心算法解决活动选择问题,假设输入的活动结束时间是递增的。
#include<stdio.h>
void main()
{
int s[20],f[20],i,j;//分别是开始时间数组和结束时间数组。
int m;
scanf("%d",&m);//输入共有多少活动。
for(i=1;i<=m;i++)
{
scanf("%d",&s[i]);
}//输入各个活动开始时间。
for(i=1;i<=m;i++)
{
scanf("%d",&f[i]);
}//输入各个活动结束时间。
int  A[20];//保存选择的活动。
    A[1]=1;
i=1;
int k=1;//指示A的下标。
for(j=2;j<=m;j++)
{
if(s[j]>=f[i])
{
A[++k]=j;
i=j;
}
}
A[++k]='\0';
for(i=1;A[i]!='\0';i++)
{
printf("%d ",A[i]);
}
printf("\n");
}
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页