排队(1)

描述

上体育课的时候,体育老师要求同学们按照身高由低到高排队.

输入

输入数据有两行

第一行一个整数n(1 <= n <= 100),表示学生总人数。

第二行n个整数,表示n位同学的身高

输出

每组测试数据输出一行,输出同学们排好队之后的身高顺序.

相邻两个数字之间用一个空格隔开

输入样例 1 

5
121 108 133 152 109

输出样例 1

108 109 121 133 152
#include<iostream>
using namespace std;
int main() {
    int a[100] ;
	int  n ;
	
	while( cin >> n ) {
	
    	for( int i = 0 ; i < n ;i++) {
        	cin >> a[i] ;
    	}
    
		for( int k = 0 ;k < n-1 ; k++ ){
	
	    	for( int i = 0 ; i < n-1 ;i++) {
	        	if( a[i] > a[i+1] ) {
	            	int t = a[i] ; a[i] = a[i+1] ; a[i+1] = t ;
	        	}
	    	}
		}
		cout << a[0] ;
    	for( int i = 1 ; i < n ;i++) {
      		cout << " " << a[i] ;
    	}
    	cout << endl ;
	}
}

还有什么题需要我解答? 

### SimEvents 中 M/M/1 排队模型的 MATLAB 实现 #### 创建 M/M/1 排队系统仿真环境 为了创建一个基于 Simulink 和 SimEvents 的 M/M/1 排队系统,在MATLAB环境中需先启动Simulink并新建空白模型文件。随后通过添加必要的模块来构建该排队系统的逻辑结构。 ```matlab % 打开新的Simulink模型 new_system('MM1QueueModel'); open_system('MM1QueueModel'); ``` #### 添加实体生成器 (Entity Generator) 此组件用于模拟客户按照泊松过程到达的情况,设置其属性使得可以调整平均到达率λ。 ```matlab add_block('simulink/SimEvents/User-Defined Blocks/Entity Generator',... 'MM1QueueModel/Arrival','Position',[70,80,90,120]); set_param('MM1QueueModel/Arrival', ... 'EventAction','disp("Customer arrives")',... 'InterGenerationTime','exprnd(1/lambda)',... 'InitialDelay','0',... 'StopWhenNoOutputs','off') ``` #### 设定服务 (Server Block) 配置服务器以处理到来的任务,这里假设服务时间为指数分布,均值为μ^-1秒。 ```matlab add_block('simulink/SimEvents/User-Defined Blocks/Single Server',... 'MM1QueueModel/ServiceStation','Position',[200,80,230,120]); set_param('MM1QueueModel/ServiceStation',... 'ServiceTime','exprnd(1/mu)') ``` #### 连接路径与终止节点 连接上述两个主要部分,并增加终点以便收集离开系统的数据记录。 ```matlab add_line('MM1QueueModel',['Arrival/:' 'ServiceStation/in']); add_block('simulink/Commonly Used Blocks/Terminator',... 'MM1QueueModel/Departure','Position',[330,80,360,120]); add_line('MM1QueueModel',['ServiceStation/out' ': Departure/in']); ``` #### 数据采集与性能评估 引入探针(Probe)监测队列长度变化;同时利用统计工具箱中的函数计算所需指标如平均等待时间和平均队长等。 ```matlab add_block('simulink/SimEvents/User-Defined Blocks/Queue Length Probe',... 'MM1QueueModel/QueueLengthMonitor','Position',[140,50,170,90]); % 设置参数 lambda 和 mu 值 lambda = 0.8; % 到达速率 mu = 1.0 ; % 服务速率 % 计算理论上的期望值作为比较基准 expected_queue_length_theory = rho / (1-rho); rho = lambda / mu; average_wait_time_theory = expected_queue_length_theory * mean_service_time; % 获取实际测量的数据 queue_lengths = get_param(gcb,'OutputSignals'); % 对比实测结果同理论预测之间的差异 actual_average_queue_length = mean(queue_lengths); mean_service_time = 1/mu; actual_avg_waiting_time = actual_average_queue_length*mean_service_time; ``` 以上代码片段展示了如何在MATLAB中使用SimEvents库建立简单的M/M/1排队模型[^1]。这不仅有助于理解此类随机服务系统的动态特性,也为进一步研究更复杂的多级或多类别的排队网络提供了基础框架。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

睡觉觉觉得

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值