C语言编程处理最优服务次序问题
发布时间:2021-11-12 13:53:44 所属栏目:教程 来源:互联网
导读:设有n个顾客同时等待一项服务。顾客i需要的服务时间为ti。应如何安排n个顾客的服务次序才能使平均等待时间达到最小?平均等待时间是n个顾客等待直到完成服务的时间总和除以n。 编程任务: 对于给定的n个顾客需要的服务时间,编程计算最优服务次序。 输入 测试
设有n个顾客同时等待一项服务。顾客i需要的服务时间为ti。应如何安排n个顾客的服务次序才能使平均等待时间达到最小?平均等待时间是n个顾客等待直到完成服务的时间总和除以n。 编程任务: 对于给定的n个顾客需要的服务时间,编程计算最优服务次序。 输入 测试数据第一行是正整数n(n<=1000),表示有n个顾客。接下来的1行中,有n个正整数,表示n个顾客需要的服务时间ti(ti<=1000)。 输出 输出最小平均等待时间,每个答案一行,保留2位小数。 样例输入 10 56 12 1 99 1000 234 33 55 99 812 样例输出 532.00 C语言编程解决最优服务次序问题 #include<stdio.h> int main() { int n,i,j; float a[100],b[100],t,x,y; scanf("%d",&n); for(i=0; i<n; i++) { scanf("%f",&a[i]); } for(i=0; i<n-1; i++) { for(j=0; j<n-i-1; j++) { if(a[j]>a[j+1]) { t=a[j]; a[j]=a[j+1]; a[j+1]=t; } } } for(i=1;i<n;i++){//每个位置累加前面到自己 a[i]+=a[i-1]; } for(j=0;j<n;j++)//加起来 x+=a[j]; y=x/n; printf("%.2f ",y); } (编辑:济南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |