
PTA浙大版《数据结构学习与实验指导(第2版)》题目集
Re:从零开始的代码生活
菜鸟一个
展开
-
第4章-8 求分数序列前N项和 (15 分)
本题要求编写程序,计算序列 2/1+3/2+5/3+8/5+… 的前N项之和。注意该序列从第2项起,每一项的分子是前一项分子与分母的和,分母是前一项的分子。输入格式:输入在一行中给出一个正整数N。输出格式:在一行中输出部分和的值,精确到小数点后两位。题目保证计算结果不超过双精度范围。输入样例:20输出样例:32.66题目集全集传送门fz = 2fm = 1sum = 0n = int(input())for i in range(n): sum += fz / fm原创 2022-01-22 15:19:24 · 359 阅读 · 0 评论 -
基础实验3-2.1 一元多项式求导 (20 分)
设计函数求一元多项式的导数。输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。输出格式:以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。输入样例:3 4 -5 2 6 1 -2 0输出样例:12 3 -10 1 6 0题目集全集传送门#include <stdio.h>int main(){ int coef, expn, flag = 0; while (scanf原创 2021-07-26 17:52:53 · 493 阅读 · 0 评论 -
进阶实验2-3.4 素因子分解 (20 分)
给定某个正整数 N,求其素因子分解结果,即给出其因式分解表达式 N=p1 k1⋅p2k2⋯pm km。输入格式:输入long int范围内的正整数 N。输出格式:按给定格式输出N的素因式分解表达式,即 N=p1 k1⋅p2k2⋯pm km,其中pi为素因子并要求由小到大输出,指数ki为pi的个数;当ki为1即因子pi只有一个时不输出ki。输入样例:1323输出样例:1323=3^3*7^2题目集全集传送门#include <stdio.h> #include原创 2021-07-21 13:56:39 · 853 阅读 · 0 评论 -
进阶实验2-3.1 海盗分赃 (25 分)
P 个海盗偷了 D 颗钻石后来到公海分赃,一致同意如下分赃策略:首先,P 个海盗通过抽签决定 1 - P 的序号。然后由第 1 号海盗提出一个分配方案(方案应给出每个海盗分得的具体数量),如果能够得到包括 1 号在内的绝对多数(即大于半数)同意,则按照该分配方案执行,否则 1 号将被投入大海喂鲨鱼;而后依次类似地由第 2 号、第 3 号等等海盗提出方案,直到能够获得绝对多数同意的方案出现为止,或者只剩下最后一位海盗,其独占所有钻石。请编写一个程序,给出第 1 号海盗的钻石分配方案中自己分得的钻石数量。附原创 2021-07-20 18:31:04 · 560 阅读 · 0 评论 -
自测-5 Shuffling Machine (20 分)
Shuffling is a procedure used to randomize a deck of playing cards. Because standard shuffling techniques are seen as weak, and in order to avoid “inside jobs” where employees collaborate with gamblers by performing inadequate shuffles, many casinos employ原创 2021-07-20 15:16:33 · 165 阅读 · 0 评论 -
进阶实验2-3.3 两个有序链表序列的交集 (20 分)
已知两个非降序链表序列S1与S2,设计函数构造出S1与S2的交集新链表S3。输入格式:输入分两行,分别在每行给出由若干个正整数构成的非降序序列,用−1表示序列的结尾(−1不属于这个序列)。数字用空格间隔。输出格式:在一行中输出两个输入序列的交集序列,数字间用空格分开,结尾不能有多余空格;若新链表为空,输出NULL。输入样例:1 2 5 -12 4 5 8 10 -1输出样例:2 5题目集全集传送门#include <stdio.h> #include <stdl原创 2021-07-19 21:16:33 · 515 阅读 · 1 评论 -
基础实验2-2.4 装箱问题 (20 分)
假设有N项物品,大小分别为s1、s2、…、si、…、sN,其中si为满足1≤si≤100的整数。要把这些物品装入到容量为100的一批箱子(序号1-N)中。装箱方法是:对每项物品, 顺序扫描箱子,把该物品放入足以能够容下它的第一个箱子中。请写一个程序模拟这种装箱过程,并输出每个物品所在的箱子序号,以及放置全部物品所需的箱子数目。输入格式:输入第一行给出物品个数N(≤1000);第二行给出N个正整数si(1≤si≤100,表示第i项物品的大小)。输出格式:按照输入顺序输出每个物品的大小及其原创 2021-07-17 18:31:42 · 454 阅读 · 0 评论 -
基础实验2-2.3 组合数的和 (15 分)
给定 N 个非 0 的个位数字,用其中任意 2 个数字都可以组合成 1 个 2 位的数字。要求所有可能组合出来的 2 位数字的和。例如给定 2、5、8,则可以组合出:25、28、52、58、82、85,它们的和为330。输入格式:输入在一行中先给出 N(1 < N < 10),随后给出 N 个不同的非 0 个位数字。数字间以空格分隔。输出格式:输出所有可能组合出来的2位数字的和。输入样例:3 2 8 5输出样例:330题目集全集传送门#include <stdio.原创 2021-07-16 18:54:26 · 537 阅读 · 0 评论 -
PTA浙大版《数据结构学习与实验指导(第2版)》题目集(参考代码)
水平有限,不一定能够把本题目集全部写出来,能写出来的都会更新,若有错误,还请指正。其他题目集:PTA浙大版《C语言程序设计实验与习题指导(第3版)》题目集(参考代码)PTA浙大版《C语言程序设计(第3版)》题目集(参考代码)PTA团体程序设计天梯赛-练习集Level-1(参考代码C语言/Python版)PTA 基础编程题目集 (参考代码)编程题:题目号题目名进阶实验1-3.1两个有序序列的中位数基础实验2-2.1整数的分类处理基础实验2-2.2求集合数据的原创 2021-07-16 18:27:40 · 5198 阅读 · 0 评论 -
基础实验2-2.2 求集合数据的均方差 (15 分)
设计函数求 N 个给定整数的均方差。若将 N 个数 A[ ] 的平均值记为 Avg,则均方差计算公式为:√[(A1−Avg)2+(A2−Avg)2+⋯+(AN−Avg)2]/N。输入格式:输入首先在第一行给出一个正整数 N(≤104),随后一行给出 N 个正整数。所有数字都不超过 1000,同行数字以空格分隔。输出格式:输出这N个数的均方差,要求固定精度输出小数点后5位。输入样例 1:106 3 7 1 4 8 2 9 11 5输出样例 1:3.03974输入样例 2:原创 2021-07-16 18:09:30 · 972 阅读 · 0 评论 -
基础实验2-2.1 整数的分类处理 (20 分)
给定 N 个正整数,要求你从中得到下列三种计算结果:• A1 = 能被 3 整除的最大整数• A2 = 存在整数 K 使之可以表示为 3K+1 的整数的个数• A3 = 存在整数 K 使之可以表示为 3K+2 的所有整数的平均值(精确到小数点后 1 位)输入格式:输入首先在第一行给出一个正整数 N,随后一行给出 N 个正整数。所有数字都不超过 100,同行数字以空格分隔。输出格式:在一行中顺序输出 A1、A2、A3的值,其间以 1 个空格分隔。如果某个数字不存在,则对应输出NONE。输入原创 2021-07-16 17:44:14 · 1589 阅读 · 0 评论 -
进阶实验1-3.1 两个有序序列的中位数 (25 分)
已知有两个等长的非降序序列S1, S2, 设计函数求S1与S2并集的中位数。有序序列A0,A1,⋯,AN−1的中位数指A(N−1)/2的值,即第⌊(N+1)/2⌋个数(A0为第1个数)。输入格式:输入分三行。第一行给出序列的公共长度N(0<N≤100000),随后每行输入一个序列的信息,即N个非降序排列的整数。数字用空格间隔。输出格式:在一行中输出两个输入序列的并集序列的中位数。输入样例1:51 3 5 7 92 3 4 5 6输出样例1:4输入样例2:6-100原创 2021-07-16 13:33:27 · 625 阅读 · 0 评论