⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 4-7you.cpp

📁 计算机算法的多处最优服务次序问题
💻 CPP
字号:
#include "stdio.h"
#include "stdlib.h"
#include "malloc.h"
#include"math.h"
#include"iostream.h"
#define OK 1

int swap(int x[],int n)//对N个数进行冒泡排列并存在数组X中
{   
	int c;
	for(int i=0;i<n-1;i++)
	 for(int j=i+1;j<n;j++)
	 {  if(x[i]>x[j])
	 	  { c=x[i];x[i]=x[j];x[j]=c;}
	 }
	 return OK;
}

int add(int x[],int n)//对数组前N个数进行求和
{  
	int pre=0;
    for(int i=0;i<n;i++)	
     pre+=x[i];
    return pre;
 }
	 	  	
void main()
{   int n,m;
    int j=0,i,k,p;
	int sum=0,aver;
	int x[100],a[100];
    FILE *fp;
    if((fp=fopen("fuwu.txt","r"))==NULL) /*打开文件fuwu.txt,准备从文件中读出数据*/
    {
           printf("cann't open file");
           exit(0);        
    }
   fscanf(fp,"%d",&n);
   fscanf(fp,"%d",&m);
   for(i=0;i<n;i++)
     {
 	   fscanf(fp,"%d",&x[i]);
     }
   fclose(fp);   /*关闭文件*/
   swap(x,n);//从小到大对N组数据排列

   i=0;k=m;
   //k为窗口服务数,也做为贪心算法组数
  while(k)
  {
	 j=0;
	 p=i;
     for(;p<n;)//将其从小到大依次分为K组数据
	 {  a[j]=x[p];p+=m;printf("%d ",j);j++;}
     for(p=1;p<=j;p++)//求各组等待时间之和
	 {  sum+=add(a,p);}
     k--;
    i++;
  }
	printf("sum=%d\n",sum);//显示等待时间结果之和
	aver=sum/(10.0);
	printf("aver=%d\n",aver);//显示结果
  	//将结果放入文件waitTime.txt
  	if((fp=fopen("waitTime.txt","w"))==NULL) /*打开文件jieguo.txt,准备往文件中写入数据*/
   {
           printf("cann't open file");
           exit(0);
	}
   fprintf(fp,"%d",aver);
   fclose(fp);   /*关闭文件*/
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -