?? 111.cpp
字號:
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#define N 50
#define TURE 1
#define FALSE 0
int s[N],f[N],A[N];
void greedyselector(int n,int *s,int *f,int *A) //貪心算法實現活動選擇
{
int i,j;
A[1]=TURE;
j=1;
for(i=2;i<=n;i++)
{
if(s[i]>=f[j])
{
A[i]=TURE;
j=i;
}
else
A[i]=FALSE;
}
}
void main()
{
int n=0,i;
while(n<=0||n>50)
{
printf("請輸入待安排活動的個數(介于0到50之間),n=");
scanf("%d",&n);
if(n<=0)
printf("請輸入大于零的數!\n");
else if(n>50)
printf("請輸入小于30的數!\n");
}
for(i=1;i<=n;i++)
{
printf("請輸入第%d個活動開始的時間,s[%d]=",i,i);
scanf("%d",&s[i]);
printf("請輸入第%d個活動結束的時間,f[%d]=",i,i);
scanf("%d",&f[i]);
}
printf("\n\n活動號i\t開始時間 結束時間\n"); //顯示輸入數據
printf("-------------------------\n");
for(i=1;i<=n;i++)
printf(" %d\t %d\t %d\n",i,s[i],f[i]);
printf("\n\n");
getch();
greedyselector(n,s,f,A); //建立最大相容子集
printf("安排的活動次序為:");
for(i=1;i<=n;i++)
{
if(A[i])
printf("\n%d %d---%d",i,s[i],f[i]);
}
printf("\n");
}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -