- 博客(17)
- 收藏
- 关注
原创 csp202303-2
问题描述顿顿总共选中了 n 块区域准备开垦田地,由于各块区域大小不一,开垦所需时间也不尽相同。据估算,其中第 i 块(1≤i≤n)区域的开垦耗时为 ti 天。这 n 块区域可以同时开垦,所以总耗时 tTotal 取决于耗时最长的区域,即:tTotal=max{t1,t2,⋯,tn}为了加快开垦进度,顿顿准备在部分区域投入额外资源来缩短开垦时间。具体来说:在第 i 块区域每投入 ci 单位资源,便可将其开垦耗时缩短 1 天;耗时缩短天数以整数记,即第 i 块区域投入资源数量必须是 ci 的整数倍;
2024-08-30 17:08:59
493
原创 csp202303-1
西西艾弗岛上散落着 n 块田地。每块田地可视为平面直角坐标系下的一块矩形区域,由左下角坐标 (x1,y1) 和右上角坐标 (x2,y2) 唯一确定,且满足 x1
2024-08-30 16:59:00
356
原创 csp202305-2
题目背景Softmax(𝑄×𝐾𝑇𝑑)×𝑉 是 Transformer 中注意力模块的核心算式,其中 𝑄、𝐾 和 𝑉 均是 𝑛 行 𝑑 列的矩阵,𝐾𝑇 表示矩阵 𝐾 的转置,× 表示矩阵乘法。问题描述为了方便计算,顿顿同学将 Softmax 简化为了点乘一个大小为 𝑛 的一维向量 𝑊:点乘即对应位相乘,记 𝑊(𝑖) 为向量 𝑊 的第 𝑖 个元素,即将 (𝑄×𝐾𝑇) 第 𝑖 行中的每个元素都与 𝑊(𝑖) 相乘。现给出矩阵 𝑄、𝐾 和 𝑉 和向量 𝑊,试计算顿顿按简化的算式计算的结果。
2024-08-30 16:47:36
340
原创 csp202305-1
国际象棋在对局时,同一局面连续或间断出现3次或3次以上,可由任意一方提出和棋。国际象棋每一个局面可以用大小为 8×8 的字符数组来表示,其中每一位对应棋盘上的一个格子。六种棋子王、后、车、象、马、兵分别用字母 k、q、r、b、n、p 表示,其中大写字母对应白方、小写字母对应黑方。棋盘上无棋子处用字符 * 表示。两个字符数组的每一位均相同则说明对应同一局面。现已按上述方式整理好了每步棋后的局面,试统计每个局面分别是第几次出现。从标准输入读入数据。
2024-08-30 16:37:25
434
原创 csp202309-2
对于平面直角坐标系上的坐标 (x,y),小 P 定义了如下两种操作:拉伸 k 倍:横坐标 x 变为 kx,纵坐标 y 变为 ky;旋转 θ:将坐标 (x,y) 绕坐标原点 (0,0) 逆时针旋转 θ 弧度(0≤θ
2024-08-23 11:12:17
349
1
原创 csp202309-1
对于平面直角坐标系上的坐标 (x,y),小 P 定义了一个包含 n 个操作的序列 T=(t1,t2,⋯,tn)。其中每个操作 ti(1≤i≤n)包含两个参数 dxi 和 dyi,表示将坐标 (x,y) 平移至 (x+dxi,y+dyi) 处。现给定 m 个初始坐标,试计算对每个坐标 (xj,yj)(1≤j≤m)依次进行 T 中 n 个操作后的最终坐标。从标准输入读入数据。输入共 n+m+1 行。输入的第一行包含空格分隔的两个正整数 n 和 m,分别表示操作和初始坐标个数。
2024-08-23 11:03:21
298
原创 csp202312-2
质数(又称“素数”)是指在大于 1 的自然数中,除了 1 和它本身以外不再有其他因数的自然数。小 P 同学在学习了素数的概念后得知,任意的正整数 n 都可以唯一地表示为若干素因子相乘的形式。如果正整数 n 有 m 个不同的素数因子 p1,p2,⋯,pm,则可以表示为:n=p1×p2×…×pm。小 P 认为,每个素因子对应的指数 ti 反映了该素因子对于 n 的重要程度。现设定一个阈值 k,如果某个素因子 pi 对应的指数 ti 小于 k,则认为该素因子不重要,可以将 pi^ti 项从 n 中除去;
2024-08-23 10:55:53
446
原创 csp202312-1
西西艾弗岛上共有n个仓库,依次编号为。每个仓库均有一个m维向量的位置编码,用来表示仓库间的物流运转关系。具体来说,每个仓库i均可能有一个上级仓库,满足:仓库j位置编码的每一维均大于仓库位置编码的对应元素。比如编码为111的仓库可以成为000的上级,但不能成为010的上级。如果有多个仓库均满足该要求,则选取其中编号最小的仓库作为仓库i的上级仓库;如果没有仓库满足条件,则说明仓库i是一个物流中心,没有上级仓库。现给定n个仓库的位置编码,试计算每个仓库的上级仓库编号。
2024-08-23 10:22:31
264
原创 算法设计与分析实验1
一本书的页码从自然数 1 开始顺序编码直到自然数 n。书的页码按照通常的习惯编排,每个页码都不含多余的前导数字 0。 对于任意长度不超过 6 的升序字符串,迅速计算出它在上述字典中的编码。 对于给定的 2 个正整数 a≤b,编程计算 a 和 b 之间约数个数最多的数。
2024-03-15 17:00:01
417
1
原创 pta公路村村通最小生成树Kruskal并查集+路径压缩+按秩合并
现有村落间道路的统计数据表中,列出了有可能建设成标准公路的若干条道路的成本,求使每个村落都有公路连通所需要的最低成本。
2023-12-07 21:37:11
310
1
原创 6.2 路径判断给定一个有N个顶点和E条边的无向图,请判断给定的两个顶点之间是否有路径存在。【bfs+邻接矩阵】
给定一个有N个顶点和E条边的,请判断给定的两个顶点之间是否有路径存在。假设顶点从0到N−1编号。输入第1行给出2个整数N(0
2023-12-01 21:26:17
753
1
原创 有向图的遍历寻找最大可达点DFS递归
如果目标是找到任意一条从起点到终点的路径,或者解决涉及图的深层结构的问题(例如检测环、拓扑排序),DFS 是更好的选择。如果你需要找到最短路径(在每条边的权重相等的情况下)或者解决广度方面的问题,比如找到与某个顶点距离为 K 的所有顶点,BFS 会是更合适的选择。对于该题选用dfs探索分支上最大数字。
2023-12-01 13:59:52
416
1
原创 PTA5.5 交换二叉树中每个结点的左孩子和右孩子(链表)
以二叉链表作为二叉树的存储结构,交换二叉树中每个结点的左孩子和右孩子。输入二叉树的先序序列。提示:一棵二叉树的先序序列是一个字符串,若字符是‘#’,表示该二叉树是空树,否则该字符是相应结点的数据元素。输出有两行:第一行是原二叉树的中序遍历序列;第二行是交换后的二叉树的中序遍历序列。
2023-11-25 23:37:44
477
原创 Pta 5.1 笛卡尔树的检验(递归&简单存储)
笛卡尔树是一种特殊的二叉树,其结点包含两个关键字K1和K2。首先笛卡尔树是关于K1的二叉搜索树,即结点左子树的所有K1值都比该结点的K1值小,右子树则大。其次所有结点的K2关键字满足优先队列(不妨设为最小堆)的顺序要求,即该结点的K2值比其子树中所有结点的K2值小。给定一棵二叉树,请判断该树是否笛卡尔树。
2023-11-17 15:10:34
307
原创 计算线段长度--^不适用于浮点数
第二行开始输入n行,每行代表一个测试实例。包含由空格分开的4个实数,分别表示mx,my,nx,ny。计算一下直角坐标系中以两点M(mx,my), N(nx,ny)为端点的线段长度。小华说:想学编程,得从基础开始!文学青年小鲁想学习编程,他去请教小华自己该如何入门。对于每组输入数据,输出一行,结果保留两位小数。第一行输入正整数n,代表有n个测试实例。
2023-10-20 00:02:18
100
1
原创 多行字符串输入时换行空格的读取问题
假设以S和X分别表示入栈和出栈操作。如果根据一个仅由S和X构成的序列,对一个空堆栈进行操作,相应操作均可行(如没有出现删除时栈空)且最后状态也是栈空,则称该序列是合法的堆栈操作序列。请编写程序,输入S和X序列,判断该序列是否合法。输入格式:输入第一行给出两个正整数N和M,其中N是待测序列的个数,M(≤50)是堆栈的最大容量。随后N行,每行中给出一个仅由S和X构成的序列。序列保证不为空,且长度不超过100。输出格式:对每个序列,在一行中输出YES如果该序列是合法的堆栈操作序列,或NO如果不是。
2023-10-14 18:52:06
288
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅