10.25一些旧代码

编程入门 行业动态 更新时间:2024-10-27 15:25:15

10.25一些旧<a href=https://www.elefans.com/category/jswz/34/1771412.html style=代码"/>

10.25一些旧代码

仿真文件 

实现每5个单位翻转一次进行样例测试

`timescale 1ns / 1psmodule clock_tb();reg clk;
wire  clk_o;hz1 u(clk,clk_o);initial clk = 1;always #(5) clk = ~clk;endmodule
`timescale 1ns / 1psmodule final_tb( );
reg clk;//开关,开时复位
reg reset;
wire[6:0]show;//表示怎么亮
wire[3:0]dn0;//表示4个数码管哪个亮
wire[7:0] hour;//表示下面LED的情况total u(clk,reset,show,dn0,hour);
initial clk = 1;
always #(5) clk = ~clk;initial beginreset =0;#9;reset = 1;end
endmodule
#include<iostream>
#include<stack>
#include<vector>
#include<map>
#include<queue>
using namespace std;
vector<vector<int>>arr;
int a[100];
int main() {int n, t;cin >> n;for (int i = 1; i <= n; i++) {cin >> t;if (arr.empty()) {vector<int>w;w.push_back(t);arr.push_back(w);}else {int j = 0;for (; j < arr.size(); j++) {if (t < arr[j].back()) {arr[j].push_back(t);break;}}if (j == arr.size()) {vector<int>w;w.push_back(t);arr.push_back(w);}}}for (int i = 0; i < arr.size(); i++) {if (arr[i].back() == 1) {for (int j = 0; j < arr[i].size(); j++) {cout << arr[i][j] << " ";}cout << endl;cout << arr[i].size();return 0;}}return 0;
}

PTA列车重拍

原 

#include<iostream>
#include<stack>
using namespace std;
//遇到一个数时,如果比已知的都大,那就新开一个
//如果比已知的小,就应该接在最接近的下面
// 类似于蜘蛛纸牌
// 
// 
//最后是要输出1号所在的队列中元素,1号就是最后的。
//应该有前驱指针
//最坏情况是正序,即123……
//
// 用结构体数组,每个元素记录它前一个元素
//
int arr[100];//记录当前各自队列的末尾元素
int p = 1;//p表示当前需要的轨道数
int n, t;
struct node {int value;int pre;
}ar[100];
//这个就代表列车,不应该把列车
int maxa() {//返回当前各队列的末尾元素的最大值int ma = arr[1];for (int i = 1; i <= p; i++) {if (arr[i] >= ma) {ma = arr[i];}}return ma;
}
int app(int num) {//找到当前队列中末尾最接近Num的队列,并返回其队列下标int mi = 100, w = 1;//mi表示当前最小的插值,w表示其所位于的队列编号for (int i = 1; i <= p; i++) {if (arr[i] > num && arr[i] - num <= mi) {w = i;mi = arr[i] - num;}}return w;
}
bool ok = false;
int main() {cin >> n;for (int i = 1; i <= n; i++) {cin >> t;if (p == 1 && !ok) {arr[p] = t;ok = true;}else if (t > maxa()) {p++;arr[p] = t;}else {ar[t].pre = arr[app(t)];arr[app(t)] = t;}}int i = 1;int co[100];int cnt = 1;co[cnt++] = 1;while (ar[i].pre != 0) {co[cnt++] = ar[i].pre;i = ar[i].pre;}for (int j = cnt - 1; j >= 1; j--) {if (j != 1) { cout << co[j] << " "; }else { cout << co[j] << endl; }}cout << p;cout << endl;return 0;
}

更多推荐

10.25一些旧代码

本文发布于:2023-12-03 13:36:38,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1655934.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:代码

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!