Algorithm Gossip: 最大访客数
2015-02-04 00:48
295 查看
/**************************************** * File Name : arithmetic.c * Creat Data : 2015.2.4 * Author : ZY *****************************************/ /*Algorithm Gossip: 最大访客数*/ /*现将举行一个餐会,让访客事先填写到达时间与离开时间, 为了掌握座位的数目,必须先估计不同时间的最大访客数。*/ /*访客i的来访时间x[i],离开时间y[i]*/ #include <stdio.h> #include <stdlib.h> #define MAX 100 #define SWAP(x,y){int t;t = x;x = y;y = t;} int maxguest(int x[],int y[],int count,int time) { int i,num = 0; for(i = 0;i < count+1;i++) { if(time > x[i]) { num++; } if(time > y[i]) { num--; } } return num; } int partition(int number[],int left,int right)//快速排序法 { int i,j,s; s = number[right]; i = left - 1; for(j = left;j < right;j++) { if(number[j] < s+1) { i++; SWAP(number[i],number[j]); } } SWAP(number[i+1],number[right]); return i+1; } void quicksort(int number[],int left,int right) { int q; if(left < right) { q = partition(number,left,right); quicksort(number,left,q-1); quicksort(number,q+1,right); } } int main(void) { int x[MAX] = {0}; int y[MAX] = {0}; int time = 0; int count = 0; printf("\n输入来访与离开125;时间(0~24):"); printf("\n范例:10 15"); printf("\n输入-1-1结束"); while(count < MAX) { printf("\n>>"); scanf("%d %d",&x[count],&y[count]); if(x[count] < 0) { break; } count++; } if(count > MAX+1) { printf("\n超出最大访客数(%d)",MAX); count--; } //预先排序 quicksort(x,0,count); quicksort(y,0,count); while(time < 25) { printf("\n%d 时的最大访客数:%d",time,maxguest(x,y,count,time)); time++; } printf("\n"); return 0; }
相关文章推荐
- Algorithm Gossip (21) 最大访客数
- Geeks Ford-Fulkerson Algorithm for Maximum Flow Problem 最大网络流问题
- Algorithm Gossip (24) 洗扑克牌(乱数排列)
- [转]带花树,Edmonds's matching algorithm,一般图最大匹配
- 最大访客数
- Algorithm - 求二叉树的最大深度
- Algorithm Gossip: 稀疏矩阵
- Algorithm Gossip (13) 背包问题 ( Knapsack Problem)
- Objective-C实现Algorithm Gossip: 费式数列代码
- C++中vector利用algorithm库寻找最大值
- Algorithm Gossip: 中序式轉後序式(前序式)
- 最大流的算法小结 Algorithm for Maximum Flow
- Algorithm One Day One--求输入的数组其子数组的最大值
- Algorithm-Gossip 经典算法系列 说明文档
- Algorithm Gossip(14) 蒙地卡罗法求 PI
- Algorithm --> 爬楼梯求最大分数
- Algorithm --> 投资组和求最大利润
- Algorithm Gossip: 老鼠走迷官(一)
- Algorithm-Gossip(1) 河内之塔 / 汉罗塔
- Algorithm Gossip (16) 超长整数运算(大数运算)