PTA_L2
DDouble-
成长记录,谢谢大家的点赞和关注
展开
-
7-11 列车调度 (25分)【最大连续上升子序列_二分优化】
解题思路:先将一个数插入进set容器中,set容器默认从小到大(自动排序),在依次进行每个数的输入,如果输入的数比当前set容器中的最后一个数小,删除set容器中第一个大于输入数的值,在将输入数进行插入,重新排序后,输入的值就代替了删除的值,依次循环往复,进行到结尾 。...原创 2020-10-24 22:16:40 · 244 阅读 · 0 评论 -
7-7 根据后序和中序遍历输出先序遍历 (25分)【板子】
1、数组a在函数中的传递:int *a2、根结点为后序遍历的最后一个3、在中序遍历中查找根结点4、//对左子树来查找根结点 //对右子树来查找根结点#include <bits/stdc++.h>using namespace std;/*2 3 1 5 7 6 4 后序 1 2 3 4 5 6 7 中序 1、root=42、i=3 3、getpre(a,b,3) 4、getpre(a+3,b+3+1,7-3-1) 4、get.原创 2020-10-22 09:50:07 · 809 阅读 · 0 评论 -
7-9 排座位 (25分)【并查集】
布置宴席最微妙的事情,就是给前来参宴的各位宾客安排座位。无论如何,总不能把两个死对头排到同一张宴会桌旁!这个艰巨任务现在就交给你,对任何一对客人,请编写程序告诉主人他们是否能被安排同席。输入格式:输入第一行给出3个正整数:N(≤100),即前来参宴的宾客总人数,则这些人从1到N编号;M为已知两两宾客之间的关系数;K为查询的条数。随后M行,每行给出一对宾客之间的关系,格式为:宾客1 宾客2 关系,其中关系为1表示是朋友,-1表示是死对头。注意两个人不可能既是朋友又是敌人。最后K行,每行给出一对需要查询的宾原创 2020-10-22 08:50:58 · 231 阅读 · 0 评论 -
7-8 抢红包 (25分)【模拟】
没有人没抢过红包吧…… 这里给出N个人之间互相发红包、抢红包的记录,请你统计一下他们抢红包的收获。输入格式:输入第一行给出一个正整数N(≤104),即参与发红包和抢红包的总人数,则这些人从1到N编号。随后N行,第i行给出编号为i的人发红包的记录,格式如下:KN1P1⋯NKPK其中K(0≤K≤20)是发出去的红包个数,Ni是抢到红包的人的编号,Pi(>0)是其抢到的红包金额(以分为单位)。注意:对于同一个人发出的红包,每人最多只能抢1次,不能重复抢。输原创 2020-10-21 18:40:13 · 781 阅读 · 0 评论 -
7-6 寻找大富翁 (25分)【堆排序,优先队列,less从大到小greater从小到大】
#include<iostream>#include<queue>using namespace std;priority_queue<int,vector<int>,less<int>>Q;int main(){ int n,m; cin>>n>>m; int t=n; int item; while(n--){ //输入 scanf("%d",&item); Q.push(ite.原创 2020-10-15 20:36:37 · 161 阅读 · 0 评论 -
7-3 银行业务队列简单模拟 (25分)输出格式:cout<<(flag>0?“ “:““)队列
设某银行有A、B两个业务窗口,且处理业务的速度不一样,其中A窗口处理速度是B窗口的2倍 —— 即当A窗口每处理完2个顾客时,B窗口处理完1个顾客。给定到达银行的顾客序列,请按业务完成的顺序输出顾客序列。假定不考虑顾客先后到达的时间间隔,并且当不同窗口同时处理完2个顾客时,A窗口顾客优先输出。输入格式:输入为一行正整数,其中第1个数字N(≤1000)为顾客总数,后面跟着N位顾客的编号。编号为奇数的顾客需要到A窗口办理业务,为偶数的顾客则去B窗口。数字间以空格分隔。输出格式:按业务处理完成的顺序输出顾客原创 2020-09-27 17:47:48 · 995 阅读 · 0 评论 -
7-2 英文单词排序 (25分)stable_sort稳定排序
本题要求编写程序,输入若干英文单词,对这些单词按长度从小到大排序后输出。如果长度相同,按照输入的顺序不变。输入格式:输入为若干英文单词,每行一个,以#作为输入结束标志。其中英文单词总数不超过20个,英文单词为长度小于10的仅由小写英文字母组成的字符串。输出格式:输出为排序后的结果,每个单词后面都额外输出一个空格。输入样例:blueredyellowgreenpurple#输出样例:red blue green yellow purple大佬博客,太可爱了测试点1、samp原创 2020-09-27 17:42:52 · 859 阅读 · 0 评论 -
7-1 旅游规划 (25分)dijkstra最短路
有了一张自驾旅游路线图,你会知道城市间的高速公路长度、以及该公路要收取的过路费。现在需要你写一个程序,帮助前来咨询的游客找一条出发地和目的地之间的最短路径。如果有若干条路径都是最短的,那么需要输出最便宜的一条路径。输入格式:输入说明:输入数据的第1行给出4个正整数N、M、S、D,其中N(2≤N≤500)是城市的个数,顺便假设城市的编号为0~(N−1);M是高速公路的条数;S是出发地的城市编号;D是目的地的城市编号。随后的M行中,每行给出一条高速公路的信息,分别是:城市1、城市2、高速公路长度、收费额,中原创 2020-09-27 16:43:03 · 2551 阅读 · 1 评论