Advertisement

贪心策略与算法

阅读量:

1.最佳服务顺序问题。
问题描述:假设有n位顾客同时需要接受某项服务,其中顾客i所需的服务时长为ti,(1≤i≤n)。应怎样确定这n位顾客接受服务的顺序,使得所有顾客的平均等待时间降至最低?(平均等待时间是指所有顾客等待服务的时间总和除以顾客总数n)
输入:第一行给出一个正整数n,代表顾客的数量
第二行包含n个正整数,分别表示每位顾客所需的服务时长
输出:计算得出的最小平均等待时间。

复制代码
    #include<iostream>
    using namespace std;
    const int N=1010;
    int a[N];
    void sort(int a[],int n)
    {
    	int temp;
    	for(int i=0;i<n-1;i++)
    		for(int j=i+1;j<n;j++)
    			if(a[i]>a[j])
    			{
    				temp=a[i];
    				a[i]=a[j];
    				a[j]=temp;
    			}
    }
    int main()
    {
    	int n;
    	cin>>n;
    	int i;
    	for(i=0;i<n;i++)
    	{
    		cin>>a[

全部评论 (0)

还没有任何评论哟~