天梯赛训练
HBU天梯赛训练题目集
Adongua
码码不易,瓜某不瓜
展开
-
题353.2022暑期天梯赛训练-7-10 银行排队问题之单队列多窗口服务 (25 分)
天梯赛训练原创 2022-07-11 11:15:42 · 200 阅读 · 0 评论 -
题270.2022分队天梯赛训练-7-48 最大公约数 (20 分)
文章目录题270.2022分队天梯赛训练-7-48 最大公约数 (20 分)一、题目二、题解题270.2022分队天梯赛训练-7-48 最大公约数 (20 分)一、题目二、题解 记住一个公式:gcd(am-bm,an-bn)=agcd(m,n)-bgcd(m,n)#include <bits/stdc++.h>using namespace std;typedef unsigned long long ull;ull p;ull gcd(ull a,ull b原创 2022-04-19 09:43:00 · 82 阅读 · 0 评论 -
题268.2022分队天梯赛训练-7-41 哥尼斯堡的“七桥问题” (25 分)
文章目录题268.2022分队天梯赛训练-7-41 哥尼斯堡的“七桥问题” (25 分)一、题目二、题解题268.2022分队天梯赛训练-7-41 哥尼斯堡的“七桥问题” (25 分)一、题目二、题解 本题考察判断一个无向图是否具有欧拉回路,条件是图连通且所有的点度数为偶数。代码如下:#include <bits/stdc++.h>using namespace std;const int maxn=1010;int N,M;int G[maxn][max原创 2022-04-19 09:21:14 · 854 阅读 · 0 评论 -
题267.2022分队天梯赛训练-7-40 最短工期 (25 分)
文章目录题267.2022分队天梯赛训练-7-40 最短工期 (25 分)一、题目二、题解题267.2022分队天梯赛训练-7-40 最短工期 (25 分)一、题目二、题解 考察关键路径算法的题目,套板子就好。#include <bits/stdc++.h>#define x first#define y secondusing namespace std;typedef pair<int,int> pii;const int maxn=110原创 2022-04-18 23:37:25 · 173 阅读 · 0 评论 -
题266.2022分队天梯赛训练-7-39 直捣黄龙 (30 分)
文章目录题266.2022分队天梯赛训练-7-39 直捣黄龙 (30 分)一、题目二、题解题266.2022分队天梯赛训练-7-39 直捣黄龙 (30 分)一、题目二、题解 多关键字单源最短路,注意初始化,以及更新操作。#include <bits/stdc++.h>using namespace std;const int maxn=210;const int Inf=0x3f3f3f3f;int N,M;map<int,string> id原创 2022-04-18 23:28:01 · 105 阅读 · 0 评论 -
题265.2022分队天梯赛训练-7-38 天梯地图 (30 分)
文章目录题265.2022分队天梯赛训练-7-38 天梯地图 (30 分)一、题目二、题解题265.2022分队天梯赛训练-7-38 天梯地图 (30 分)一、题目二、题解 本题其实就是要你解决两个问题,一个是求最快最短的路,,一个是求最短,途经节点数最少的路。说白了就是写两个双关键字的单源最短路算法就好。代码(这里单源最短路算法采用朴素dij)如下:#include <bits/stdc++.h>using namespace std;const int ma原创 2022-04-18 23:08:25 · 102 阅读 · 0 评论 -
题263.2022分队天梯赛训练-7-24 纸牌排序 (10 分)
文章目录题263.2022分队天梯赛训练-7-24 纸牌排序 (10 分)一、题目二、题解题263.2022分队天梯赛训练-7-24 纸牌排序 (10 分)一、题目二、题解 #include <bits/stdc++.h>using namespace std;map<string,int> order;struct Card{ string name; int num;};bool mycmp(struct Card c1,str原创 2022-04-18 22:33:20 · 136 阅读 · 0 评论 -
题259.2022分队天梯赛训练-7-11 求n阶乘的值 (60 分)
文章目录题259.2022分队天梯赛训练-7-11 求n!的值 (60 分)一、题目二、题解题259.2022分队天梯赛训练-7-11 求n!的值 (60 分)一、题目二、题解 高精度阶乘运算。写好高精度加法,乘法就好,然后迭代求阶乘(递归后期太深,会进行不下去)。#include <bits/stdc++.h>using namespace std;string add(string a,string b)//模拟竖式计算加法{ string res;原创 2022-04-18 20:23:39 · 107 阅读 · 0 评论 -
题253.2022寒假天梯赛训练-7-2 分解质因数 (20 分)
文章目录题253.2022寒假天梯赛训练-7-2 分解质因数 (20 分)一、题目二、题解题253.2022寒假天梯赛训练-7-2 分解质因数 (20 分)一、题目二、题解//直接试除法分解质因数,时间复杂度为O(sqrt(N))#include <bits/stdc++.h>using namespace std;int main(){ int a,b; cin>>a>>b; for(int i=a;i<=b;i+原创 2022-03-12 21:01:38 · 150 阅读 · 0 评论 -
题251.2022寒假天梯赛训练-7-14 汉诺塔问题 (10 分)
文章目录题251.2022寒假天梯赛训练-7-14 汉诺塔问题 (10 分)一、题目二、题解题251.2022寒假天梯赛训练-7-14 汉诺塔问题 (10 分)一、题目二、题解 #include <bits/stdc++.h>using namespace std;void move(char src,char des){ printf("%c-->%c\n",src,des);}void hanoi(int n,char src,char med原创 2022-03-11 23:46:02 · 290 阅读 · 0 评论 -
题250.2022寒假天梯赛训练-7-15 城市间紧急救援 (25 分)
文章目录题250.2022寒假天梯赛训练-7-15 城市间紧急救援 (25 分)一、题目二、题解题250.2022寒假天梯赛训练-7-15 城市间紧急救援 (25 分)一、题目二、题解 /*//错误代码#include <bits/stdc++.h>using namespace std;const int Inf=0x3f3f3f3f;const int maxn=550;int N,M;int G[maxn][maxn];int team[maxn];原创 2022-03-11 23:43:08 · 160 阅读 · 0 评论 -
题249.2022寒假天梯赛训练-7-13 拯救007(升级版) (30 分)
文章目录题249.2022寒假天梯赛训练-7-13 拯救007(升级版) (30 分)一、题目二、题解题249.2022寒假天梯赛训练-7-13 拯救007(升级版) (30 分)一、题目二、题解 看这题代码前可以先瞅瞅之前那到非升级版的拯救007,毕竟思路基本一致,只不过这里对于要输出的结果加了点佐料。代码如下:#include <bits/stdc++.h>using namespace std;const int maxn=101;int N;doub原创 2022-03-11 23:41:21 · 272 阅读 · 0 评论 -
题247.2022寒假天梯赛训练-7-10 单身狗 (25 分)
文章目录题247.2022寒假天梯赛训练-7-10 单身狗 (25 分)一、题目二、题解题247.2022寒假天梯赛训练-7-10 单身狗 (25 分)一、题目二、题解 //我要提醒自己,不是有配对的人就一定不落单的,它另一半可能不来啊!!!#include <bits/stdc++.h>using namespace std;const int maxn=1e5+1;int cp[maxn];set<int> s;vector<int>原创 2022-03-09 23:30:08 · 148 阅读 · 0 评论 -
题246.2022寒假天梯赛训练-7-5 冰岛人 (25 分)
文章目录题246.2022寒假天梯赛训练-7-5 冰岛人 (25 分)一、题目二、题解题246.2022寒假天梯赛训练-7-5 冰岛人 (25 分)一、题目二、题解 这题我前面做的时候一直不带脑子地以为五代以外的要求是只要一方的五代以内的长辈没有另一方的长辈就好,然后就直接去世只对了测试点0。。。后来才发现,原来那个要求是要如果有这个公共祖先那他必须要满足在双方都是五代及以外。也就是说,为No的情况为公共祖先于双方都在五代以内或者一方有五代以内。//五代以外包括五代必须是要满足任何一原创 2022-03-09 23:27:41 · 295 阅读 · 0 评论 -
题225.2022寒假天梯赛训练-7-15 喊山 (30 分)
文章目录题225.2022寒假天梯赛训练-7-15 喊山 (30 分)一、题目二、题解题225.2022寒假天梯赛训练-7-15 喊山 (30 分)一、题目二、题解 直接bfs就完事了#include <bits/stdc++.h>using namespace std;const int maxn=10010;int n,m;vector<int> G[maxn];int visited[maxn];int main(){ int原创 2022-02-08 22:13:53 · 307 阅读 · 0 评论 -
题223.2022寒假天梯赛训练-7-12 清点代码库 (25 分)
文章目录题223.2022寒假天梯赛训练-7-12 清点代码库 (25 分)一、题目二、题解题223.2022寒假天梯赛训练-7-12 清点代码库 (25 分)一、题目二、题解 我这个做法其实写的时候自己都容易迷糊(捂脸。基本思路就是统计好每个模块的个数,然后排序。代码如下:#include <bits/stdc++.h>using namespace std;typedef map<vector<int>,int>::iterator P原创 2022-02-08 16:56:40 · 500 阅读 · 0 评论 -
题222.2022寒假天梯赛训练-7-11 深入虎穴 (25 分)
文章目录题222.2022寒假天梯赛训练-7-11 深入虎穴 (25 分)一、题目二、题解题222.2022寒假天梯赛训练-7-11 深入虎穴 (25 分)一、题目二、题解 要你找最远的那扇门就是bfs到底,然后输出最后一个节点就完事了。要注意的是,开始节点需要你自己去找,也就是没有被进入的那个点,下面代码用flag标记是否下标对应的节点被进入。#include <bits/stdc++.h>using namespace std;vector<int>原创 2022-02-08 16:22:29 · 491 阅读 · 0 评论 -
题221.2022寒假天梯赛训练-7-10 网红点打卡攻略 (25 分)
文章目录题220.2022寒假天梯赛训练-7-5 福到了 (15 分)一、题目二、题解题220.2022寒假天梯赛训练-7-5 福到了 (15 分)一、题目二、题解 这里是用二维数组存输入的字符,注意输入的问题#include <bits/stdc++.h>using namespace std;char a[100][100],tmp[100][100];int main(){ char ch; int N; cin>>原创 2022-02-08 16:14:21 · 587 阅读 · 1 评论 -
题220.2022寒假天梯赛训练-7-9 简单计算器 (25 分)
文章目录题220.2022寒假天梯赛训练-7-9 简单计算器 (25 分)题目:输入格式:输出格式:输入样例:输出样例:输入样例:输出样例:思路:代码:题220.2022寒假天梯赛训练-7-9 简单计算器 (25 分)题目:本题要求你为初学数据结构的小伙伴设计一款简单的利用堆栈执行的计算器。如上图所示,计算器由两个堆栈组成,一个堆栈 S1存放数字,另一个堆栈S2,存放运算符。计算器的最下方有一个等号键,每次按下这个键,计算器就执行以下操作:1.从S1中弹出两个数字,顺序为n1和n2;2.从S2中原创 2022-02-08 15:52:34 · 193 阅读 · 0 评论 -
题219.2022寒假天梯赛训练-7-5 福到了 (15 分)
文章目录题219.2022寒假天梯赛训练-7-5 福到了 (15 分)一、题目二、题解题219.2022寒假天梯赛训练-7-5 福到了 (15 分)一、题目二、题解 这里是用二维数组存输入的字符,注意输入的问题#include <bits/stdc++.h>using namespace std;char a[100][100],tmp[100][100];int main(){ char ch; int N; cin>>原创 2022-02-08 15:46:56 · 217 阅读 · 0 评论 -
题215.2022寒假天梯赛训练-7-15 长城 (30 分)
文章目录题215.2022寒假天梯赛训练-7-15 长城 (30 分)一、题目二、题解题215.2022寒假天梯赛训练-7-15 长城 (30 分)一、题目二、题解 依题意分析我们会发现,你要想监视到长城的每一处你就必须要重点关照那个凹点的位置,从南到北过去,你必须在凹点前(凹点的南方)的第一个凸点处建立烽火台你才能监视到那个凹点,否则要是你在第一个之后的一个位置甚至更后的位置去建,你的视线必定会受到前面的凸点的限制而监视不到那个凹点。由于我们是优先关照凹点之前的第一个凸点,而这个凸点原创 2022-01-26 21:13:02 · 431 阅读 · 0 评论 -
题213.2022寒假天梯赛训练-7-13 肿瘤诊断 (30 分)
文章目录题213.2022寒假天梯赛训练-7-13 肿瘤诊断 (30 分)一、题目二、题解题213.2022寒假天梯赛训练-7-13 肿瘤诊断 (30 分)一、题目二、题解 开始看这题的时候就没懂啥意思,想好久才知道我们可以把L个M*N的切片叠起来变成一个MNL的三维立体(切片+像素连通“上下左右前后”暗示),之后在三维立体中去bfs找连通集(连通体暗示),只有连通集的点数>=T,才加入到总体积。依上述操作,代码如下:#include <bits/stdc++.h>原创 2022-01-26 20:43:42 · 304 阅读 · 0 评论 -
题206.2022寒假天梯赛训练-7-8 古风排版 (20 分)
文章目录题206.2022寒假天梯赛训练-7-8 古风排版 (20 分)一、题目二、题解题206.2022寒假天梯赛训练-7-8 古风排版 (20 分)一、题目二、题解 yysy,这道题我第一次做是在去年寒假,到现在这是第四回了,前三回一次都没有满分过,直到这次我才发现输出排版后的字符时,那空着的是空格,所以初始化输出数组时要注意先把它用空格初始化一下。。。#include <bits/stdc++.h>using namespace std;char output原创 2022-01-21 22:51:54 · 362 阅读 · 0 评论 -
题205.2022寒假天梯赛训练-7-5 一帮一 (15 分)
文章目录题205.2022寒假天梯赛训练-7-5 一帮一 (15 分)一、题目二、题解题205.2022寒假天梯赛训练-7-5 一帮一 (15 分)一、题目二、题解 #include <bits/stdc++.h>using namespace std;int flag[100];struct Student{ int sex; string name; int cp;}S[100];//用一个结构体数组去存该学生的名字,性别以及是否配对原创 2022-01-21 22:41:43 · 423 阅读 · 0 评论 -
题204.2022寒假天梯赛训练-7-4 大笨钟 (10 分)
文章目录题204.2022寒假天梯赛训练-7-4 大笨钟 (10 分)一、题目二、题解题204.2022寒假天梯赛训练-7-4 大笨钟 (10 分)一、题目二、题解 #include <bits/stdc++.h>using namespace std;int main(){ int hh,mm; scanf("%d:%d",&hh,&mm); if(hh<12||(hh==12&&mm==0))//小于12原创 2022-01-21 22:32:34 · 422 阅读 · 0 评论 -
题203.2022寒假天梯赛训练-7-13 社交集群 (30 分)
文章目录题203.2022寒假天梯赛训练-7-13 社交集群 (30 分)一、题目二、题解题203.2022寒假天梯赛训练-7-13 社交集群 (30 分)一、题目二、题解 本题要你把有相同兴趣的人搞在一起,求最后形成的群体的个数,以及每个群体的人数。套并查集模板就好。 代码如下:#include <bits/stdc++.h>using namespace std;const int maxn = 1e3 + 1;//1001int parent[maxn];原创 2022-01-21 21:27:27 · 183 阅读 · 0 评论 -
题201.2022寒假天梯赛训练-7-9 拯救007 (25 分)
文章目录题201.2022寒假天梯赛训练-7-9 拯救007 (25 分)一、题目二、题解题201.2022寒假天梯赛训练-7-9 拯救007 (25 分)一、题目二、题解 本题要抓住几个点。第一,开始起跳出小岛怎么处理:虽然从岸边起跳肯定可以距离鳄鱼更近更有机会跳到但是岸是个曲线,点无数个,你没法处理,因此我们不妨利用这是个圆形的岛,将起跳点直接设置在原点,然后跳的距离多一个岛屿的半径长度即可。第二,如何判断我能不能跳到下一个鳄鱼头上:都是一个个点,我们自然是用两点间距离公式得到距原创 2022-01-16 23:49:34 · 378 阅读 · 0 评论 -
题154.2022寒假天梯赛训练&2021秋周练习-7-5 部落 (20 分)
文章目录题154.2021秋周练习-7-5 部落 (20 分)一、题目二、题解题154.2021秋周练习-7-5 部落 (20 分)一、题目二、题解无话可说,直接无脑并查集。。。#include <bits/stdc++.h>using namespace std;const int Maxsize=10010;int parent[Maxsize];int total=0,num=0;int maxindex=0;void init(){ fi原创 2021-11-20 21:53:30 · 592 阅读 · 0 评论 -
题193.2022寒假天梯赛训练-7-4 N个数求和 (20 分)
文章目录题193.2022寒假天梯赛训练-7-4 N个数求和 (20 分)一、题目二、题解题193.2022寒假天梯赛训练-7-4 N个数求和 (20 分)一、题目二、题解 本题两个关键,通分与约分。需用到求最大公约数与最小公倍数的算法。#include <bits/stdc++.h>using namespace std;typedef long long ll;ll up[101],down[101];ll gcd(ll x,ll y)//Stein算原创 2022-01-12 15:47:40 · 202 阅读 · 0 评论 -
题191.2022寒假天梯赛训练-7-10 关于堆的判断 (25 分)
文章目录题191.2022寒假天梯赛训练-7-10 关于堆的判断 (25 分)一、题目二、题解题191.2022寒假天梯赛训练-7-10 关于堆的判断 (25 分)一、题目二、题解 本题要注意两个地方,第一个是判断输入是问的哪个问题,还有一个是建堆。前者感觉更不好处理些,但是输入时抓住每个问题的不同点去判断并搞好输入的特点也就没问题了。后者就是直接建堆,你可以选择stl建堆也可以直接插入建堆,代码都给出来了。至于那些问题如何判断正确性无非就是看节点位于数组中的位置是否满足正确的关系就好(q原创 2022-01-10 16:29:25 · 491 阅读 · 0 评论 -
题190.2022寒假天梯赛训练-7-6 前世档案 (20 分)
文章目录题190.2022寒假天梯赛训练-7-6 前世档案 (20 分)一、题目二、题解题190.2022寒假天梯赛训练-7-6 前世档案 (20 分)一、题目二、题解 观察并分析题目所给的二叉树示例可知,我们设向左(是)为0,向右(否)为1,则按树的路径走到底时对应的问题编号即为组成的二进制数转十进制数。按这个思路实现代码即可。#include <bits/stdc++.h>using namespace std;typedef long long ll;/*原创 2022-01-10 15:54:44 · 453 阅读 · 0 评论 -
题184.pat甲级练习-1040 Longest Symmetric String&最长对称子串 (25 分)
文章目录题184.pat甲级练习-1040 Longest Symmetric String&最长对称子串 (25 分)一、题目二、题解题184.pat甲级练习-1040 Longest Symmetric String&最长对称子串 (25 分)一、题目二、题解 想要判断子串是否对称一个很好的办法就是以假设子串字符数为奇数,以字符串中的某个字符为对称中心向左右两边同时扩展,看str[i-j]时候等于str[i+j],如果是的话就对称子串长度加2,不是就break;子串字符原创 2022-01-04 17:38:17 · 439 阅读 · 0 评论 -
题183.2022寒假天梯赛训练-7-9 重排链表 (25 分)
文章目录题183.2022寒假天梯赛训练-7-9 重排链表 (25 分)一、题目二、题解题183.2022寒假天梯赛训练-7-9 重排链表 (25 分)一、题目二、题解 这道题可谓坑点重重。。。基本思路就是先把原始链表遍历一遍得到顺序编号,然后按重排顺序输出节点,这个重排规则观察可得当节点数为偶数时,以n号节点收尾,为奇数时以N-n号节点收尾,其中n等于N/2。而N需要注意不一定就是原来输入的N,因为它可能会有废物节点,和那个链表半毛钱关系没有(测试点3,xs,原谅我智商不高,不看参考我根原创 2022-01-04 16:55:00 · 407 阅读 · 0 评论 -
题182.2022寒假天梯赛训练-7-7 抢红包 (25 分)
文章目录题182.2022寒假天梯赛训练-7-7 抢红包 (25 分)一、题目二、题解题182.2022寒假天梯赛训练-7-7 抢红包 (25 分)一、题目二、题解 排序题,无需多言,注意那个单位换算可能带来的错误就好。#include <bits/stdc++.h>using namespace std;struct People{ int id; int interest; int n;}P[10001];bool mycmp(s原创 2022-01-04 16:11:28 · 228 阅读 · 0 评论 -
题181.2022寒假天梯赛训练-7-3 跟奥巴马一起画方块 (15 分)
文章目录题181.2022寒假天梯赛训练-7-3 跟奥巴马一起画方块 (15 分)一、题目二、题解题181.2022寒假天梯赛训练-7-3 跟奥巴马一起画方块 (15 分)一、题目二、题解 本题唯一要注意的点就是四舍五入的处理上,我当时做的时候没有多想,就直接想着把N乘以0.5之后的浮点数结果给它化成字符串然后通过判断小数点后的那位数来决定四舍五入。但后面看到好些人都是根据N/2结果要么是.0要么是.5,前者为N偶数,后者为N奇数,所以分奇偶处理就好了(捂脸#include <b原创 2022-01-04 16:04:12 · 186 阅读 · 0 评论 -
题180.2022寒假天梯赛训练-7-1 日期格式化 (10 分)
文章目录题180.2022寒假天梯赛训练-7-1 日期格式化 (10 分)一、题目二、题解题180.2022寒假天梯赛训练-7-1 日期格式化 (10 分)一、题目二、题解 一道考察输入输出的简单题。依题意已知输入的月一定会在日的前面,所以只用输入三个数判断谁是年即可得到剩下的三个数谁是月谁是日,而这里判断年的依据就是看数是否大于等于1900。代码如下:#include <bits/stdc++.h>using namespace std;int main(){原创 2022-01-04 15:52:51 · 226 阅读 · 0 评论 -
题60.2022寒假天梯赛训练&C++练习-树存储 完全二叉树的层序遍历 (20 分)
文章目录题60.C++练习-树存储 完全二叉树的层序遍历 (20 分)一、题目二、题解题60.C++练习-树存储 完全二叉树的层序遍历 (20 分)一、题目二、题解原本给定一个后序遍历没有中序遍历是无法确定唯一的二叉树的,但由于建的是完全二叉树,所以我们可以利用它的性质来建树。对于一棵完全二叉树,由于除了最后一层都是满的,只有最后一层最少也得左边满,所以我们完全可以用一个数组从上到下从左到右去存储这棵树,那么其实我们就可以想如何通过后序遍历去产生这样一个数组。我们从根节点开始建树,设开始为1原创 2021-08-02 11:53:17 · 94 阅读 · 0 评论 -
题52.2022寒假天梯赛训练&C++练习-7-5 图模拟 图着色问题 (25 分)
文章目录题52.C++练习-7-5 图模拟 图着色问题 (25 分)一、题目二、题解题52.C++练习-7-5 图模拟 图着色问题 (25 分)一、题目二、题解图着色问题有解,即只要是图中相邻的点一定不能是相同的颜色,所以只用判断每次输入的颜色分配是否满足上述条件即可。我们用一个结构体数组去存边,即两个邻接点,然后在后期整体输入完颜色数据之后遍历结构体数组,判断color[v1]是否等于color[v2],若等于则为No,反之若都不等于,则为Yes#include <bits/原创 2021-08-02 11:57:11 · 110 阅读 · 0 评论 -
题64.2022寒假天梯赛训练&C++练习-dfs模拟 功夫传人 (25 分)
文章目录题64.C++练习-dfs模拟 功夫传人 (25 分)一、题目二、题解题64.C++练习-dfs模拟 功夫传人 (25 分)一、题目二、题解本题改造DFS算法,把每一代的功力与功损放入递归,用静态变量存得道者功和,最后return就好。要注意,浮点全用双精度,不然部分大测试点过不去。#include <bits/stdc++.h>using namespace std;vector<int> G[100000];int flag[100000原创 2021-08-04 11:42:20 · 63 阅读 · 0 评论 -
题76.天梯赛暑期结营测试-爱说假话的小A (25 分)
文章目录题76.天梯赛暑期结营测试-爱说假话的小A (25 分)一、题目二、题解题76.天梯赛暑期结营测试-爱说假话的小A (25 分)一、题目二、题解本题采用并查集的操作去做,集合形成以后,检查输入时并非连通的两个的点(不是朋友)看它们是否为朋友关系就好(即是否为一个根)。需要注意三个点,第一,你真的是傻子哦,那个判断两点是否同根你当时怎么会想着是用parent是否相等来玩哦,肯定是要find_root去找根呀,然后再判断根是否相等。第二,这里我用了map来代替原来存每个点的父亲的数组,原创 2021-08-11 13:50:28 · 67 阅读 · 0 评论