pta
lcxdz
这个作者很懒,什么都没留下…
展开
-
L2-011 玩转二叉树 (25 分)(前序 中序 层次
添加链接描述#include<bits/stdc++.h>using namespace std;const int N=50;int in[N],pre[N];typedef struct node { node *l, *r; int data;}bitnode;node *build(int inl,int inr,int prel,int prer){ if(inl>inr)return NULL; bitnode *root; root=new node原创 2022-04-18 13:29:54 · 92 阅读 · 0 评论 -
1004 Counting Leaves (30 分) (bfs
添加链接描述浓浓的pat风格题型#include<bits/stdc++.h>using namespace std;const int N=110,M=210;int e[M],ne[M],h[M],idx;void add(int a,int b){ e[idx]=b,ne[idx]=h[a],h[a]=idx++;}int ans[N],cnt;int sum[N];typedef pair<int,int> pii;int mx=0;int v原创 2021-10-20 19:26:55 · 54 阅读 · 0 评论 -
1003 Emergency (25 分) (dijkstra
添加链接描述#include<bits/stdc++.h>using namespace std;const int N=510,M=900009;int n,m,st,ed;int cnt[N],sum[N],arr[N];int e[M],ne[M],h[N],w[M],idx;int dist[N],vis[N];typedef pair<int,int> pii;void dijkstra(int st){ priority_queue<pii原创 2021-10-20 18:47:09 · 90 阅读 · 0 评论 -
L2-023 图着色问题 (25 分) 图的遍历
题干#include<bits/stdc++.h>using namespace std;typedef long long ll;#define INF 0x3f3f3f3f#define MAXN 100005#define MAXM 1000006vector<int>mp[509];int col[509];int main(){ int v,e,k; cin>>v>>e>>k; for(int i=0;i<e原创 2021-04-21 19:41:49 · 114 阅读 · 0 评论 -
PTA 7-44 天梯赛座位分配 (20分)(模拟)
7-44 天梯赛座位分配 (20分)天梯赛每年有大量参赛队员,要保证同一所学校的所有队员都不能相邻,分配座位就成为一件比较麻烦的事情。为此我们制定如下策略:假设某赛场有 N 所学校参赛,第 i 所学校有 M[i] 支队伍,每队 10 位参赛选手。令每校选手排成一列纵队,第 i+1 队的选手排在第 i 队选手之后。从第 1 所学校开始,各校的第 1 位队员顺次入座,然后是各校的第 2 位队员…… 以此类推。如果最后只剩下 1 所学校的队伍还没有分配座位,则需要安排他们的队员隔位就坐。本题就要求你编写程序,自原创 2021-01-30 00:00:39 · 411 阅读 · 0 评论 -
PTA 7-45 点赞 (20分)
7-45 点赞 (20分)微博上有个“点赞”功能,你可以为你喜欢的博文点个赞表示支持。每篇博文都有一些刻画其特性的标签,而你点赞的博文的类型,也间接刻画了你的特性。本题就要求你写个程序,通过统计一个人点赞的纪录,分析这个人的特性。输入格式:输入在第一行给出一个正整数N(≤1000),是该用户点赞的博文数量。随后N行,每行给出一篇被其点赞的博文的特性描述,格式为“K F1 ⋯FK ”,其中1≤K≤10,Fi (i=1,⋯,K)是特性标签的编号,我们将所有特性标签从1到100原创 2021-01-29 23:59:26 · 531 阅读 · 0 评论 -
PTA 7-137 出售金项链(误差修正版) (10分)(0.00001
7-137 出售金项链(误差修正版) (10分)请编写程序,输入黄金的价格和项链的重量,计算总金额,并打印票据。注:总金额单位最大只到亿(不到10亿)。输入格式金价和重量(均为正实数)输出格式参看输出样例。注:单价、重量和金额,均要求输出2位小数(自动四舍五入),金额还要求输出大写。大写数字和金额单位所使用的汉字分别为:数字0 ~ 9的大写依次为: 零、壹、贰、叁、肆、伍、陆、柒、捌、玖。金额单位由小大到依次为: 分、角、元、拾、佰、仟、万、拾、佰、仟、亿。输入样例351.65 14原创 2021-01-28 21:54:59 · 320 阅读 · 0 评论 -
PTA 7-87 计算N^N (20分)(快速幂
7-87 计算N^N (20分)给出一个整数N,输出N^N(N的N次方)的十进制表示的值,如果这个值超过了214748364,就求结果对214748364的余数。输入格式:一个整数T,代表输入数据组数。接下来T行每行一个整数N(1 <= N <= 10^9)。输出格式:输出N^N对214748364的余数输入样例:223输出样例:427作者jzfan单位阜阳师范大学代码长度限制16 KB时间限制1000 ms内存限制64 MB#include<原创 2021-01-27 23:03:06 · 594 阅读 · 0 评论 -
PTA 7-108 股票涨了吗 (20分) KMP
7-108 股票涨了吗 (20分)马克吐温曾说:“10月,这是炒股最危险的月份;其他危险的月份有7月、1月、9月、4月、11月、5月、3月、6月、12月、8月和2月。"然而股票是那么的迷人,总有韭菜前仆后继的加入,并且有无数的韭菜自命不凡,想要从不可捉摸的市场中捕获出一些有趣的信息。韭菜小CC在观察A股许多天后,终于下手买了一只走势优异、老板下周的回国的股票——乐视网(300104.SZ)。在入手之后,股价涨涨跌跌,老板却没有回国。股票好不容易涨了起来,却又跌了下去,又回到了几天前,这段时间便没有任何收原创 2021-01-27 23:01:37 · 189 阅读 · 0 评论 -
PTA 7-109 素因子分解 (20分)(常规素数 枚举
7-109 素因子分解 (20分)给定某个正整数 N,求其素因子分解结果,即给出其因式分解表达式 N=p1k1 ⋅p2k2 ⋯pmkm 。输入格式:输入long int范围内的正整数 N。输出格式:按给定格式输出N的素因式分解表达式,即 N=p1k1*p2k2*…*pm^km,其中pi为素因子并要求由小到大输出,指数ki为pi的个数;当ki为1即因子pi只有一个时不输出ki。输入样例:1323输出样例:原创 2021-01-27 22:58:53 · 611 阅读 · 0 评论 -
PTA 7-110 汽车加油问题 (20分)(水 贪心)
7-110 汽车加油问题 (20分)题目来源:王晓东《算法设计与分析》一辆汽车加满油后可行驶 n公里。旅途中有若干个加油站。设计一个有效算法,指出应 在哪些加油站停靠加油,使沿途加油次数最少。输入格式:第一行有 2 个正整数n和 k(k<=1000 ),表示汽车加满油后可行驶n公里,且旅途中有 k个加油站。 第二行有 k+1 个整数,表示第 k 个加油站与第k-1 个加油站之间的距离。 第 0 个加油站表示出发地,汽车已加满油。 第 k+1 个加油站表示目的地。输出格式:输出最少加油次数。原创 2021-01-27 22:54:21 · 604 阅读 · 0 评论 -
PTA 7-171 第k小元素 (20分)
7-171 第k小元素 (20分)给定一个大小为n(1≤n≤1000000)且无序的整型数组,数组中可能存在相同元素,请找出该数组第k(1≤k≤n)小的元素,第k小元素指的是按从小到大排序后的第k个位置上的元素。输入格式:每个输入文件为一个测试用例,每个文件的第一行给出两个正整数n和k,第二行给出n个整数,其间以空格分隔。输出格式:输出第k小元素的值。输入样例:10 42 3 5 12 4 9 3 8 2 9输出样例:3#include<bits/stdc++.h>usi原创 2021-01-27 00:33:44 · 3087 阅读 · 1 评论 -
PTA 7-177 前世档案 (20分)
7-177 前世档案 (20分)qs.jpg网络世界中时常会遇到这类滑稽的算命小程序,实现原理很简单,随便设计几个问题,根据玩家对每个问题的回答选择一条判断树中的路径(如下图所示),结论就是路径终点对应的那个结点。path.jpg现在我们把结论从左到右顺序编号,编号从 1 开始。这里假设回答都是简单的“是”或“否”,又假设回答“是”对应向左的路径,回答“否”对应向右的路径。给定玩家的一系列回答,请你返回其得到的结论的编号。输入格式:输入第一行给出两个正整数:N(≤30)为玩家做一次测试要回答的问原创 2021-01-27 00:30:11 · 721 阅读 · 0 评论 -
PTA 7-195 缩写期刊名 (10分) (数据加强已修改
7-195 缩写期刊名 (10分)科研工作者经常要向不同的期刊投稿。但不同期刊的参考文献的格式往往各不相同。有些期刊要求参考文献所发表的期刊名必须采用缩写形式,否则直接拒稿。现对于给定的期刊名,要求按以下规则缩写: (1)长度不超过4的单词不必缩写; (2)长度超过4的单词仅取前4个字母,但其后要加“.”; (3)所有字母都小写。输入格式:首先输入一个正整数T,表示测试数据的组数,然后是T组测试数据。 每组测试输入一个包含大小写字母和空格的字符串(长度不超过85),单词由若干字母构成,单词之间以一个空原创 2021-01-27 00:29:07 · 4435 阅读 · 7 评论 -
7-136 阶乘末尾0的个数 (20分)
从输入中读取一个数n,求出n!中末尾0的个数。输入格式:输入有若干行。第一行上有一个整数m,指明接下来的数字的个数。然后是m行,每一行包含一个确定的正整数n,1<=n<=1000000000。输出格式:对输入行中的每一个数据n,输出一行,其内容是n!中末尾0的个数。输入样例:331001024输出样例:024253易知因数5小于2,统计5的因数 有的数不止一次除以5#include<bits/stdc++.h>using namespace std;原创 2021-01-23 22:22:39 · 354 阅读 · 0 评论 -
7-55 素数对猜想 (20分)
7-55 素数对猜想 (20分)让我们定义dn 为:dn =pn+1 −pn ,其中pi 是第i个素数。显然有d1 =1,且对于n>1有dn 是偶数。“素数对猜想”认为“存在无穷多对相邻且差为2的素数”。现给定任意正整数N(<105 ),请计算不超过N的满足猜想的素数对的个数。输入格式:输入在一行给出正整数N。输出格式:在一行中输出不超过N的满足猜想的素数对的个数。输入样例:20输出样例:4分析原创 2021-01-20 23:56:37 · 366 阅读 · 0 评论 -
7-99 堆栈模拟队列 (25分) pta
1.题目设已知有两个堆栈S1和S2,请用这两个堆栈模拟出一个队列Q。所谓用堆栈模拟队列,实际上就是通过调用堆栈的下列操作函数:int IsFull(Stack S):判断堆栈S是否已满,返回1或0;int IsEmpty (Stack S ):判断堆栈S是否为空,返回1或0;void Push(Stack S, ElementType item ):将元素item压入堆栈S;ElementType Pop(Stack S ):删除并返回S的栈顶元素。实现队列的操作,即入队void AddQ(E原创 2021-01-19 22:47:34 · 222 阅读 · 0 评论