08 2019 档案
摘要:题目描述 "链接" 给出n个城市之间有相互连接的m条道路,当删除一个城市和其连接的道路的时候,问其他几个剩余的城市至少要添加多少个路线才能让它们重新变为连通图 分析 要理解好题意,知道是让你求连通块的数目 然后就是如何求连通块数目:dfs!!!记得复习啊 对删除城市的处理:$vis[a]=true$
阅读全文
摘要:预处理 每相邻的两个字符间添加一个" ",使所有偶数长度回文子串变成奇数,转化成求奇数长度的回文子串 P[i]数组 $P[i]$数组:以$i$点为中心的回文子串的半径 规律: 回文子串的长度为半径减1,起始位置为中间位置 半径再除以2 故只要我们找到最大的半径,就可以找到最大的回文子串 P[i]数组
阅读全文
摘要:研究目的 为了研究高温服装的导热性,开展假人温度分布实验,将问题转化为一维复合介质传热问题,建立数学模型,模拟假人皮肤外侧温度变化情况 给定I层和IV层厚度及各层参数,求解问题 问题描述 在高温环境下工作时,人们需要穿着专用服装以避免灼伤 服装有三层织物材料构成,记为$I$ 层,$II$层,$III
阅读全文
摘要:题目描述 "链接" 给定一段一段的绳子,你需要把它们串成一条绳。每次串连的时候,是把两段绳子对折,再如下图所示套接在一起。这样得到的绳子又被当成是另一段绳子,可以再次对折去跟另一段绳子串连。每次串连后,原来两段绳子的长度就会减半。给定N段绳子的长度,你需要找出它们能串成的绳子的最大长度~ 分析 读题
阅读全文
摘要:题目描述 "链接" 给一些字符串,求它们拼接起来构成最小数字的方式 分析 字典序比较:对于长度不等的字符串,将字符串短的补'\0'到相同长度,然后比较 一般想的都是按照字典序比较,小的肯定排前面,但是对于字符串前缀相同的,应该用哪个字符串,取决于后面接的字符串。比如32和321和3214。32321
阅读全文
摘要:题目描述 "链接" k张桌子,球员到达后总是选择编号最小的桌子。如果训练时间超过2h会被压缩成2h,如果到达时候没有球桌空闲就变成队列等待。 k张桌子中m张是vip桌,如果vip桌子有空闲,而且队列里面有vip成员,那么等待队列中的第一个vip球员会到最小的vip球桌训练。如果vip桌子空闲但是没有
阅读全文
摘要:题目描述 "链接" 判断是否A+B C 分析 注意溢出问题的分析 因为A、B的大小为[ 2^63, 2^63],用long long 存储A和B的值,以及他们相加的值sum: 如果A 0, B 0,sum是不可能溢出的 如果A 0, B 0,sum可能会溢出,sum范围理应为(0, 2^64 – 2
阅读全文
摘要:题目描述 "链接" 有n个客户,k个窗口。已知每个客户的到达时间和需要的时长,如果有窗口就依次过去,如果没有窗口就在黄线外等候(黄线外只有一个队伍,先来先服务),求客户的平均等待时长。银行开放时间为8点到17点,再8点之前不开门,8点之前来的人都要等待,在17点后来的人不被服务。 分析 仔细模拟题意
阅读全文
摘要:题目描述 "链接" 将给定的N个正整数按非递增的顺序,填入“螺旋矩阵”~所谓“螺旋矩阵”,是指从左上角第1个格子开始,按顺时针螺旋方向填充~要求矩阵的规模为m行n列,满足条件:m n等于N;m =n;且m n取所有可能值中的最小值 分析 方法1:就是按照题意模拟,我自己想到一个切换方向的方法,但是必
阅读全文
摘要:to do 1153 1012 1016 1025 1026 1028 1055 1062 1075 1080 1083 1095 1113 1137 1141
阅读全文
摘要:题目描述 "链接" +A +C D B +A +C +D +B 分析 最开始想的用图建立关系,其实没想错,但是有几个点没想到 A在寻找同性朋友时,需要避免找到他想要的伴侣B,所以当当前朋友就是B或者B的同性朋友就是A时舍弃该结果 输出时候要以4位数的方式输出,所以要%04d 如果用int接收一对朋友
阅读全文
摘要:题目描述 "链接" 给出一棵二叉搜索树的前序遍历,问结点u和v的共同最低祖先是谁 分析 二叉搜索树的中序遍历是将结点排序后的顺序,现在又给了前序,此时可以唯一确定出二叉搜索树 二叉搜索树的性质是左边的比a小,右边的比a大,此时说明a是左右子树的祖先,但不一定是最近 前序遍历的话是LDR,map mp
阅读全文
摘要:题目描述 "链接" 将数字(不超过1000位)反转求和得到的结果是否是回文数 分析 需要的函数,数字反转,大数求和,判断是否是回文数 一开始其实 不需要考虑大数的问题 !!这样至少能过很多样例!!! 这样数字可以就用纯数字long long表示!!!!(其实用nums数组最开始就保存更方便!!!)
阅读全文
摘要:题目描述 "链接" 给出选课人数和课程数目,然后再给出每个人的选课情况,请针对每门课程输出选课人数以及所有选该课的学生姓名,按照字典序 分析 输入的是:人名 课程id,输出的是 课程id 人名 实际要完成的是人名到课程id的映射 如何不用STL来做 表示$i$号人的名字, 表示上id号课程的人的编号
阅读全文
摘要:题目描述 "链接" 模拟数字图书馆的查询功能。会给出n本书的信息,以及m个需要查询的命令,数字标号对应相应的命令,数字编号后面的字符串是查询的搜索词,要求输出这行命令以及输出满足条件的书的id,如果一个都没有找到,输出Not Found 分析 建立5个map,分别代表5个字符串到xx的映射。这个xx
阅读全文
摘要:C语言 除了 以外,对其他格式符的输入是以空白符(空格,TAB,回车)作为结束标志 因此 除非 把空格按字符读入,其他情况会跳过空格 可以接收空格,tab,回车 字符串使用 读入时,是以空格和换行作为读入结束标志 使用 ,`putchar`输入输出单个字符 可以识别换行符,所以敲回车的时候如果后面有
阅读全文
摘要:digit 位数 proportional 成比例的 dominant 主要的,主导的 resolution 解决,分辨率 synonyms 同义词 cops 警察 narrow down 缩小 carriage return 回车 alphanumerical 字母数字的 case insensi
阅读全文
摘要:题目描述 "链接" 求一串的数字中连续的一段,使得这个连续的段内数字的和恰好等于所期望的值m。如果不能找到恰好等于,就找让自己付出最少的价格(总和必须大于等于所给值)的那段区间。求所有可能的结果 分析 输出区间和等于指定值的方案,可以先统计前缀和,然后作差就可以得到区间和 原本错误的做法:作差得到区
阅读全文
摘要:题目描述 "链接" 当tag=1时,radix进制的n1的十进制值=ans进制的n2的十进制值,求解这个ans进制是多少。 分析 本质就是求解方程!用二分查找求解方程的根 先要用longlong类型应该不难看出来。 试答案的时候不能顺序搜索,要用二分搜索。 二分的边界要想对,最小的应该是数中最小的那
阅读全文
摘要:算法分析 算法分析即指对一个算法所需要的资源进行预测 内存,通信带宽或者计算机硬件等资源偶尔是我们关心的 通常, 资源是指我们希望测度的计算时间 RAM模型 分析一个算法之前,需要建立一个实现技术的模型,包括描述所用资源及其代价的模型 RAM模型:单处理器,随机存取RAM 指令一条接一条地执行,没有
阅读全文
摘要:题目描述 "链接" 给一个树的层序遍历,判断它是不是堆,是大顶堆还是小顶堆。输出这个树的后序遍历 分析 堆实际是一棵完全二叉树,大顶堆满足,根节点大于左右子树的所有结点 堆有数组存储,遍历堆的方法:遍历所有有孩子的结点,一共有$0$到$(n 1)/2$个。具体见代码!!注意不要越界!! c++ in
阅读全文
摘要:题目描述 "链接" 给出一棵树的结点个数n,以及它的前序遍历和后序遍历,输出它的中序遍历,如果中序遍历不唯一就输出No,且输出其中一个中序即可,如果中序遍历唯一就输出Yes,并输出它的中序 分析 分析题目所给的正反样例,可以发现,最后递归到单一子树后,左根是它,右根也是它,就不唯一了。此时,可以随便
阅读全文
摘要:题目描述 "链接" 输出一个二叉搜索树的最后两层结点个数a和b,以及他们的和 分析 用链表存储,建立,注意一定记住insert &加引用,以及root=NULL时新建结点的几个操作 dfs求cnt[layer] c++ include using namespace std; struct node
阅读全文
摘要:```c++ #include using namespace std; const int maxn = 20; struct node{ int l,r; }nodes[maxn]; int n, have[maxn], rt; string l,r; int maxid = -1, ans; void dfs(int root, int idx){ if(root == ...
阅读全文
摘要:题目描述 "链接" 反转一棵二叉树,给出原二叉树的每个结点的左右孩子,输出它的层序和中序遍历 分析 反转二叉树就是存储时交换左右结点,也可以遍历时交换遍历次序 如何找root,别人用的have[i]=1标记,我用的二重循环 处理输入输出,用string+stoi更简单,我用的char 和自己写的st
阅读全文
摘要:题目描述 "链接" 给出一棵二叉搜索树(给出每个结点的左右孩子),且已知根结点为0,求并且给出应该插入这个二叉搜索树的数值,求这棵二叉树的层序遍历 分析 给了下标,肯定用静态数组实现 利用的性质:二叉搜索树中序遍历肯定有有序 对所给key进行排序,得到中序遍历次序 利用中序遍历次序,对树进行遍历,可
阅读全文
摘要:题目描述 "链接" 输入树的结点个数N,结点编号为1~N,非叶子结点个数M,然后输出M个非叶子结点的孩子结点的编号,求结点个数最多的一层,根结点的层号为1,输出该层的结点个数以及层号 这道题类似于前面的那个可以用DFS,BFS解的题 BFS c++ void bfs(){ queue q; laye
阅读全文
摘要:题目描述 "链接" 给一棵树,在树根处货物的价格为p,然后每往下走一层,价格增加r%,求所有叶子结点的最高价格,以及这个价格的叶子结点个数 分析 关键在于dfs怎么设计来保存这个最大值,以及最大值的个数 别人的代码如下,比较巧。。。还用了个maxnum。。我怎么没想到 c++ void dfs(in
阅读全文
摘要:题目描述 "链接" 用栈的形式给出一棵二叉树的建立的顺序,求这棵二叉树的后序遍历 分析 性质: 树的先序等于入栈次序,树的中序遍历等于出栈次序 先序:先访问根再入栈,所以入栈次序就是先序遍历次序 中序:先递归访问左子树,回溯时访问根,回溯时即出栈时,所以出栈次序就是中序遍历 所以问题转换为已知先序中
阅读全文
摘要:题目描述 "链接" 给一棵树,在树根出货物的价格为p,然后从根结点开始每往下走一层,该层的货物价格将会在父亲结点的价格上增加r%,给出每个叶结点的货物量,求他们的价格之和 分析 supply chain看作一棵树 其他注意点在代码中 c++ include using namespace std;
阅读全文
摘要:题目描述 "链接" 给出一棵树,问每一层各有多少个叶子结点 分析 建树 使用树的静态写法 下标为结点地址 这里题目只是用到了结点的编号,没有点权,所以变成 BFS解法 很自然可以想到用BFS遍历树,对于一个结点,如果没有孩子$child.size()==0$ 则说明是叶子,那么当层的$ans[lay
阅读全文
摘要:题目描述 "链接" 给一串构成树的序列,已知该树是完全二叉搜索树,求它的层序遍历的序列 分析 二叉搜索树的性质:左子树改造中序遍历程序,将访问变成赋值 得到数组存储顺序 得到层序遍历顺序 完全二叉树:结点为空:$i n$ 结点为叶子:$2i n$ c++ include using namespac
阅读全文

浙公网安备 33010602011771号