当前位置:首页 > 编程笔记 > 正文
已解决

C++ 火车调度

来自网友在路上 166866提问 提问时间:2023-10-23 20:27:52阅读次数: 66

最佳答案 问答题库668位专家为你答疑解惑

火车调度

#include<stdio.h>   
#define MAX 100
typedef struct Q {int data[MAX];int len;int last;
}Q_t;Q_t a[MAX];  //MAX个队列
void Init(Q_t* a) {a->len = 0;
}void En(Q_t* a, int num) {a->last = num; //最后进入的值a->data[a->len++] = num;
}void Print(Q_t a) {for (int i = 0; i <a.len; i++) {printf("%d ", a.data[i]);}puts("");
}int res = 0;
int b[MAX];
int main() {int n;scanf("%d", &n);for (int i = 0; i < n; i++) {scanf("%d", b + i);}for (int i = 0; i < n; i++) {int k = b[i];//分析第i个情况int flag = 0; //默认没找到for (int j = 0; j < res; j++) {//分析已经开辟的车找位置            if (a[j].last > k) {flag = 1;En(&a[j], k);//入队列break;}}if (flag == 0) { //开辟一个新的队列Init(&a[res]);En(&a[res++],k);            }}Print(a[0]);//打第一列的情况printf("%d", res);return 0;
}

查看全文

99%的人还看了

猜你感兴趣

版权申明

本文"C++ 火车调度":http://eshow365.cn/6-22694-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!