刷题
Jeffrey.pace
努力学习
展开
-
PTA 数据结构 7-9 目录树
输入格式输入首先给出正整数N(≤104),表示ZIP归档文件中的文件和目录的数量。随后N行,每行有如下格式的文件或目录的相对路径和名称(每行不超过260个字符):路径和名称中的字符仅包括英文字母(区分大小写); 符号“\”仅作为路径分隔符出现; 目录以符号“\”结束; 不存在重复的输入项目; 整个输入大小不超过2MB。输出格式假设所有的路径都相对于root目录。从root目录开始,在输出时每个目录首先输出自己的名字,然后以字典序输出所有子目录,然后以字典序输出所有文件。注意,在输出原创 2021-10-30 18:33:51 · 1207 阅读 · 0 评论 -
PTA 数据结构 7-4 银行排队问题之单窗口“夹塞”版
题目介绍排队“夹塞”是引起大家强烈不满的行为,但是这种现象时常存在。在银行的单窗口排队问题中,假设银行只有1个窗口提供服务,所有顾客按到达时间排成一条长龙。当窗口空闲时,下一位顾客即去该窗口处理事务。此时如果已知第i位顾客与排在后面的第j位顾客是好朋友,并且愿意替朋友办理事务的话,那么第i位顾客的事务处理时间就是自己的事务加朋友的事务所耗时间的总和。在这种情况下,顾客的等待时间就可能被影响。假设所有人到达银行时,若没有空窗口,都会请求排在最前面的朋友帮忙(包括正在窗口接受服务的朋友);当...原创 2021-10-07 23:17:20 · 655 阅读 · 0 评论 -
PTA 数据结构 7-1 银行排队问题之单队列多窗口服务
题目介绍假设银行有K个窗口提供服务,窗口前设一条黄线,所有顾客按到达时间在黄线后排成一条长龙。当有窗口空闲时,下一位顾客即去该窗口处理事务。当有多个窗口可选择时,假设顾客总是选择编号最小的窗口。本题要求输出前来等待服务的N位顾客的平均等待时间、最长等待时间、最后完成时间,并且统计每个窗口服务了多少名顾客。题目输入输入第1行给出正整数N(≤1000),为顾客总人数;随后N行,每行给出一位顾客的到达时间T和事务处理时间P,并且假设输入数据已经按到达时间先后...原创 2021-10-02 15:04:22 · 3585 阅读 · 0 评论 -
UVA 210 Concurrency Simulator 解题报告
#include<bits/stdc++.h> // UVA 210using namespace std;deque<int>ready,block; //等待队列和阻塞队列queue<string>code[20]; //将各个程序放入数组类型的queue<string>容器里int Sum_Programme,Q,ti[5],letter[26];bool locked;void.原创 2021-05-19 23:16:01 · 97 阅读 · 0 评论 -
UVA 11998 Broken Keyboard 解题报告
#include <bits/stdc++.h> // UVA 11988using namespace std;int main(){ deque <string> lyb; string str; while ( cin >> str ) { int len = str.size() ; string p; for ( int i = 0 ; i <.原创 2021-06-09 22:04:09 · 78 阅读 · 0 评论 -
UVA 712 S-Trees 解题报告
AC之后看了看网上的代码,我人麻了 o_O。先上我的代码:#include <iostream> // Uva 712#include <map>using namespace std;int nowdepth = 1; // 遍历二叉树时 记录每时每刻走到的树的深度int pace = -1; // 输入01串,需要记录给下一片叶子赋为何值,pace为01串的下标int init = 1;typedef struct Tre原创 2021-07-27 16:25:58 · 169 阅读 · 0 评论 -
UVA 10305 Ordering Tasks 解题报告
拓扑排序它是对有向图的顶点排成的一个线性序列。规则:图中每个顶点只出现一次。 A在B前面,则不存在B在A前面的路径。(即该有向图不能成环) 顶点的顺序是保证所有指向它的下个节点在被指节点前面!(例如A—>B—>C那么A一定在B前面,B一定在C前面)。所以,这个核心规则下只要满足即可,所以拓扑排序序列不一定唯一。(可以参考数据结构与算法—拓扑排序_bigsai-CSDN博客_数据结构拓扑排序算法这篇博文)输入输出输入输入有多组数据...原创 2021-08-06 11:39:27 · 129 阅读 · 0 评论 -
UVA 1103 Ancient Messages 解题报告
深度优先遍历思想:对每一个可能的分支路径深入到不能再深入为止,而且每个结点只能访问一次。题目大意: 多组样例输入 每组输入样例中,第一行输入两个整数row、column,分别表示行数和列数。接下来输入row行column列的十六进制字符矩阵picture(我的代码里变量名,下同),将其转为二进制矩阵pixel后(如 9c -->10011100),字符1表示一个黑色像素,字符0表示一个白色像素。最后通过其形状,依照图例按字典序输出该字符矩阵含有...原创 2021-07-30 23:15:01 · 135 阅读 · 0 评论 -
UVA 839 Not so Mobile 解题报告
题目大意:给出每个支点的左右物体重量和到支点的距离,wl,dl,wr,dr分别表示左边物体重量和到左边的距离,右边物体重量和到右边的距离,当wl*dl==wr*dr成立时,说明杠杆平衡。忽略所有绳子和杠杆重量。注意事项:只有所有天平都平衡,输出YES; 该题的数据为递归输入#include <iostream> // Uva 839using namespace std;typedef struct Tree{ int dat...原创 2021-07-25 09:22:34 · 127 阅读 · 0 评论 -
UVA 439 Knight Moves 解题报告
广度优先搜索(BFS)广度优先遍历也叫广度优先搜索,广度优先搜索从某个顶点出发,访问顶点,然后访问该结点的所有未被方位的邻接点,直到结点不存在未被访问的邻接点。 其算法步骤一般为:1、将起点入队;2、分析队首元素;3、将队首结点可拓展的点入队。如果队首结点没有可拓展的点,将队首结点出队,重复步骤,直到达到目标位置或者队列为空。简单分析: 这是个简单的训练题,题意不需要解释。我在做的时候,将紫书上的棋盘横放下来观察,即字母表示行,数字表示列,且棋...原创 2021-07-31 22:20:00 · 146 阅读 · 0 评论