
SDUT
文章平均质量分 73
snowman22
“一以贯之的努力,不得懈怠的人生,每天的微小积累,会决定最终结果。”
展开
-
sdut pta排序
7-1 统计工龄给定公司N名员工的工龄,要求按工龄增序输出每个工龄段有多少员工。原创 2023-02-28 16:38:06 · 1165 阅读 · 0 评论 -
sdut pta查找表
7-1 电话聊天狂人给定大量手机用户通话记录,找出其中通话次数最多的聊天狂人。原创 2023-02-28 16:29:43 · 577 阅读 · 0 评论 -
SDUT PTA 查找表
已知有两个等长的非降序序列S1, S2, 设计函数求S1与S2并集的中位数。有序序列A0,A1,⋯,AN−1的中位数指A(N−1)/2的值,即第⌊(N+1)/2⌋个数(A0为第1个数)。简单起见,这里只列出拨出方和接收方的11位数字构成的手机号码,其中以空格分隔。如果这样的人不唯一,则输出狂人中最小的号码及其通话次数,并且附加给出并列狂人的人数。第一行给出序列的公共长度N(0原创 2022-11-20 11:14:11 · 323 阅读 · 0 评论 -
查找表の知识点and算法实现
平均查找长度:ASL = Lm+Ln(块长度+索引表长度)索引查找(分块查找):集结了以上两种的优点,避开了其缺点。最优查找长度:√n + 1 (此时每一块的长度为√n)缺点:插入、删除效率低;优点:效率高O(log2n)缺点:查找效率低O(n)原创 2022-11-15 16:35:58 · 168 阅读 · 0 评论 -
图论算法 代码实现
就是用一个二维数组存啦~但是只能用于较小的图。原创 2022-11-15 08:37:04 · 343 阅读 · 0 评论 -
SDUT PTA 图论
输入第一行为两个正整数n和e,分别表示图的顶点数和边数,其中n不超过20000,e不超过1000。接下来e行表示每条边的信息,每行为3个非负整数a、b、c,其中a和b表示该边的端点编号,c表示权值。本题限定在深度优先遍历过程中,如果同时出现多个待访问的顶点,则优先选择编号最小的一个进行访问,以顶点0为遍历起点。输入第一行为两个整数n和e,分别表示图的顶点数和边数,其中n不超过20000,e不超过50。输出为一行整数,为按顶点编号顺序排列的源点0到各顶点的最短路径长度(不含源点到源点),每个整数后一个空格。原创 2022-10-29 23:12:59 · 1641 阅读 · 0 评论 -
SDUT PTA 树和二叉树
7-1 还原二叉树给定一棵二叉树的先序遍历序列和中序遍历序列,要求计算该二叉树的高度。原创 2022-10-19 14:56:57 · 822 阅读 · 0 评论 -
SDUT PTA 字符串和数组
7-1 字符串模式匹配(KMP)给定一个字符串 text 和一个模式串 pattern,求 pattern 在text 中的出现次数。text 和 pattern 中的字符均为英语大写字母或小写字母。text中不同位置出现的pattern 可重叠。原创 2022-10-19 14:51:15 · 528 阅读 · 0 评论 -
二叉树--模板
#include<bits/stdc++.h>using namespace std;const int N = 100;const int MAXN = 0x3f3f3f3f;typedef long long ll;char s[N];int n;int tot = 0;struct node{ char data; node *l, *r;};// 建树node *creat(node *root){ if(s[tot] == ','){.原创 2022-10-17 20:20:06 · 354 阅读 · 0 评论 -
SDUT PTA 栈和队列
7-1 进制转换输入十进制整数N和待转换的进制x(2、8、16),分别代表十进制N转换成二进制、八进制和十六进制,输出对应的结果。十六进制中A~F用大写字母表示。原创 2022-09-11 10:52:48 · 1707 阅读 · 1 评论 -
PTA JAVA02 基础语法1
*我们亲切地称呼它为“面向答案(样例)编程” ——直接输出答案就行。7-8 jmu-Java-02基本语法-05-浮点数的精确计算。7-13 sdut-数据类型-2 应用勾股定理,了解世界灿烂文明。7-15 sdut-数据类型-4 第七次全国人口普查数据分析。7-14 sdut-数据类型-3 计算飞行员到最近机场的距离。7-9 sdut-sel-0-输出学生个人信息(II)7-11 sdut-数据类型-1-求班级男女生比例。7-10 sdut-JAVA判断合法标识符。7-3 计算三角形面积。原创 2022-09-02 19:33:53 · 1167 阅读 · 0 评论 -
PTA JAVA01 Java入门
7-13 sdut-入门-7 A+B for Input-Output Practice (VII)7-10 sdut-入门-4 A+B for Input-Output Practice (IV)7-12 sdut-入门-6 A+B for Input-Output Practice (VI)7-11 sdut-入门-5 A+B for Input-Output Practice (V)7-7 sdut-入门-1 A+B for Input-Output Practice(I)7-15 打印字母B。原创 2022-09-02 19:21:45 · 829 阅读 · 0 评论 -
SDUT PTA 链表
7-1 单链表的创建及遍历读入n值及n个整数,建立单链表并遍历输出。原创 2022-08-31 19:34:28 · 2555 阅读 · 2 评论 -
SDUT PTA 顺序表
7-1 顺序表的建立及遍历读入n值及n个整数,建立顺序表并遍历输出。原创 2022-08-28 22:11:52 · 1223 阅读 · 0 评论 -
大一C语言文件作业(源代码)
**源代码:#include<stdio.h>#include<stdlib.h>#define num 7// 宏定义学生人数int tot1[10], tot2[10], tot3[10];// 各个分数段的人数double ave[10];double sum[10];// 储存所有学生同一科目的总分以计算每个课程平均分char enter = '\n';// 换行 方便使用struct student{// 每个学生都要输入的信息 cha...原创 2022-05-15 18:32:45 · 2378 阅读 · 0 评论 -
SDUT PTA 动态规划
7-1 最长公共子序列 (20 分)从一个给定的串中删去(不一定连续地删去)0个或0个以上的字符,剩下地字符按原来顺序组成的串。例如:“ ”,“a”,“xb”,“aaa”,“bbb”,“xabb”,“xaaabbb”都是串“xaaabbb”的子序列。(例子中的串不包含引号。)编程求N个非空串的最长公共子序列的长度。限制:2<=N<=100;N个串中的字符只会是数字0,1,…,9或小写英文字母a,b,…,z;每个串非空且最多含100个字符;N个串的长度的乘积不会超过30000。输入格式原创 2022-04-17 23:14:47 · 1294 阅读 · 1 评论 -
SDUT PTA 递归
6-1 数据结构实验之排序八:快速排序 (20 分)本题要求实现一个快速排序函数。给定 N ( N<= 100000 ) 个 int 范围内的整数,要求用快速排序对数据进行升序排列。函数接口定义:void Quick_sort (int array[], int l, int r); 其中array[]、l、r都是用户传入的参数。array[]是需要排序的数组,数组长度不会超过100000;l和r是需要进行排序的左端点和右端点。裁判测试程序样例:...原创 2022-04-15 22:13:32 · 1760 阅读 · 1 评论 -
SDUT PTA 递推
7-1 马拦过河卒 (20 分)棋盘上A点有一个过河卒,需要走到目标B点。卒行走的规则:可以向下、或者向右。同时在棋盘上C点有一个对方的马,该马所在的点和所有跳跃一步可达的点称为对方马的控制点。因此称之为“马拦过河卒”。棋盘用坐标表示,A点(0,0)、B点(n,m)(n,m为不超过15的整数),同样马的位置坐标是需要给出的。现在要求你计算出卒从A点能够到达B点的路径的条数,假设马的位置是固定不动的,并不是卒走一步马走一步。输入格式:一行四个数据,用空格分隔,分别表示B点的坐标和马的坐标。输原创 2022-04-15 22:04:13 · 1094 阅读 · 2 评论 -
SDUT PTA 贪心
7-1 活动选择 (20 分)学校的大学生艺术中心周日将面向全校各个学院的学生社团开放,但活动中心同时只能供一个社团活动使用,并且每一个社团活动开始后都不能中断。现在各个社团都提交了他们使用该中心的活动计划(即活动的开始时刻和截止时刻)。请设计一个算法来找到一个最佳的分配序列,以能够在大学生艺术中心安排不冲突的尽可能多的社团活动。比如有5个活动,开始与截止时刻分别为:最佳安排序列为:1,4,5。输入格式:第一行输入活动数目n(0<n<100);以后输入n行,分别输入序号原创 2022-04-15 21:47:41 · 1404 阅读 · 1 评论 -
SDUT PTA 结构体
7-1 检查宿舍卫生 (20 分)不知道是从哪个学校开始兴起的还是哪个领导的决定,学校里每周都要检查宿舍卫生!大家发现没有,检查宿舍卫生是件很奇葩的事情,它剥削了每件物品的意义:垃圾桶里不能有垃圾,挂钩上不能挂东西,桌子上不能放东西,床上不能躺人!!假设检查卫生分为五项成绩:垃圾桶得分、挂钩得分、桌子得分、床铺得分和窗台得分。每项满分20分,总分满分为100分。按照计算机学院奇葩的规定,宿舍成绩在85分以下就要算作不合格。某天,宿管阿姨给了你一个检查完宿舍的打分表,让你帮忙统计下有多少个宿舍没有达到85原创 2022-04-15 21:46:48 · 1796 阅读 · 0 评论 -
SDUT PTA 链表
7-1 数据结构实验之链表一:顺序建立链表 (20 分)输入N个整数,按照输入的顺序建立单链表存储,并遍历所建立的单链表,输出这些数据。输入格式:第一行输入整数的个数N(1 <= N <= 100000)。第二行依次输入每个整数。输出格式:输出这组整数。输入样例:812 56 4 6 55 15 33 62输出样例:12 56 4 6 55 15 33 62#include<stdio.h>#include<stdlib.原创 2022-04-15 21:45:48 · 2133 阅读 · 2 评论 -
《数据结构》专题12--拓扑排序和关键路径
A - 数据结构实验之图论十:判断给定图是否存在合法拓扑序列Description给定一个有向图,判断该有向图是否存在一个合法的拓扑序列。Input输入包含多组,每组格式如下。第一行包含两个整数n,m,分别代表该有向图的顶点数和边数。(n<=10)后面m行每行两个整数a b,表示从a到b有一条有向边。Output若给定有向图存在合法拓扑序列,则输出YES;否则输出NO。SampleInput1 02 21 22 1Output...原创 2022-02-28 13:25:46 · 117 阅读 · 0 评论 -
《数据结构》专题14--排序
A - 数据结构实验之排序一:一趟快排Description给定N个长整型范围内的整数,要求输出以给定数据中第一个数为枢轴进行一趟快速排序之后的结果。Input连续输入多组数据,每组输入数据第一行给出正整数N(N < = 10^5),随后给出N个长整型范围内的整数,数字间以空格分隔。Output输出一趟快速排序后的结果,数字间以一个空格间隔,行末不得有多余空格。SampleInput849 38 65 97 76 13 27 49Outp...原创 2022-02-16 11:25:29 · 272 阅读 · 0 评论 -
《数据结构》专题10--最短路
A - 图结构练习——最短路径Description给定一个带权无向图,求节点1到节点n的最短路径。Input输入包含多组数据,格式如下。第一行包括两个整数n m,代表节点个数和边的个数。(n<=100)剩下m行每行3个正整数a b c,代表节点a和节点b之间有一条边,权值为c。Output每组输出占一行,仅输出从1到n的最短路径权值。(保证最短路径存在)SampleInput3 21 2 11 3 11 0Output...原创 2022-02-14 22:52:07 · 621 阅读 · 0 评论 -
《数据结构》专题9--图的遍历DFS&BFS
A - 数据结构实验之图论二:图的深度遍历Description请定一个无向图,顶点编号从0到n-1,用深度优先搜索(DFS),遍历并输出。遍历时,先遍历节点编号小的。Input输入第一行为整数n(0 < n < 100),表示数据的组数。 对于每组数据,第一行是两个整数k,m(0 < k < 100,0 < m < k*k),表示有m条边,k个顶点。 下面的m行,每行是空格隔开的两个整数u,v,表示一条连接u,v顶点的无向边。Output输出有n行,对应n组输出,每行为原创 2022-02-12 13:44:38 · 690 阅读 · 0 评论 -
sdut oj 实验6——动态规划
A - 递归的函数Description给定一个函数 f(a, b, c):如果 a ≤ 0 或 b ≤ 0 或 c ≤ 0 返回值为 1;如果 a > 20 或 b > 20 或 c > 20 返回值为 f(20, 20, 20);如果 a < b 并且 b < c 返回f(a, b, c−1) + f(a, b−1, c−1) − f(a, b−1, c);其它情况返回 f(a−1, b, c) + f(a−1, b−1, c) + f(a−1, .原创 2021-12-14 17:39:15 · 482 阅读 · 0 评论 -
《数据结构》专题8--图的存储方式
A - 图的基本存储的基本方式一Description解决图论问题,首先就要思考用什么样的方式存储图。但是小鑫却怎么也弄不明白如何存图才能有利于解决问题。你能帮他解决这个问题么?Input多组输入,到文件结尾。每一组第一行有两个数n、m表示n个点,m条有向边。接下来有m行,每行两个数u、v代表u到v有一条有向边。第m+2行有一个数q代表询问次数,接下来q行每行有一个询问,输入两个数为a,b。注意:点的编号为0~n-1,2<=n<=5000 ,n*(n-1)/2<=.原创 2022-01-25 20:03:00 · 166 阅读 · 0 评论 -
《数据结构》专题6--堆、哈夫曼树
A - 数据结构实验之二叉树六:哈夫曼编码Description字符的编码方式有多种,除了大家熟悉的ASCII编码,哈夫曼编码(HuffmanCoding)也是一种编码方式,它是可变字长编码。该方法完全依据字符出现概率来构造出平均长度最短的编码,称之为最优编码。哈夫曼编码常被用于数据文件压缩中,其压缩率通常在20%~90%之间。你的任务是对从键盘输入的一个字符串求出它的ASCII编码长度和哈夫曼编码长度的比值。Input输入数据有多组,每组数据一行,表示要编码的字符串。Outpu..原创 2022-01-25 20:03:48 · 129 阅读 · 0 评论 -
《数据结构》专题5--二叉查找树和平衡二叉树
A - 树结构练习——排序二叉树的中序遍历Description在树结构中,有一种特殊的二叉树叫做排序二叉树,直观的理解就是——(1).每个节点中包含有一个关键值 (2).任意一个节点的左子树(如果存在的话)的关键值小于该节点的关键值 (3).任意一个节点的右子树(如果存在的话)的关键值大于该节点的关键值。现给定一组数据,请你对这组数据按给定顺序建立一棵排序二叉树,并输出其中序遍历的结果。Input输入包含多组数据,每组数据格式如下。第一行包含一个整数n,为关键值的个数,关键值用整数原创 2022-01-23 21:49:02 · 323 阅读 · 0 评论 -
sdut oj实验4——递归
A - 计算组合数Description计算组合数。C(n,m),表示从n个数中选择m个的组合数。计算公式如下:若:m=0,C(n,m)=1否则,若 n=1,C(n,m)=1 否则,若m=n,C(n,m)=1 否则C(n,m) = C(n-1,m-1) + C(n-1,m).Input第一行是正整数N,表示有N组要求的组合数。接下来N行,每行两个整数n,m (0 <= m <= n &...原创 2021-12-08 23:14:04 · 470 阅读 · 2 评论 -
《数据结构》专题3--串和数组
A - 数据结构实验之串一:KMP简单应用Description给定两个字符串string1和string2,判断string2是否为string1的子串。Input输入包含多组数据,每组测试数据包含两行,第一行代表string1(长度小于1000000),第二行代表string2(长度小于1000000),string1和string2中保证不出现空格。Output对于每组输入数据,若string2是string1的子串,则输出string2在string1中的位置,若不是,输..原创 2022-01-19 14:28:25 · 1550 阅读 · 0 评论 -
《数据结构》专题2--栈和队列
A - 数据结构实验之栈与队列一:进制转换Description输入一个十进制非负整数,将其转换成对应的 R (2 <= R <= 9) 进制数,并输出。Input第一行输入需要转换的十进制非负整数;第二行输入 R。Output输出转换所得的 R 进制数。SampleInput12798Output2377#include<bits/stdc++.h>using namespace std;queue <int&..原创 2022-01-19 14:21:25 · 391 阅读 · 0 评论 -
《数据结构》专题4--二叉树
A - 数据结构实验之二叉树二:遍历二叉树Description已知二叉树的一个按先序遍历输入的字符序列,如abc,,de,g,,f,,,(其中,表示空结点)。请建立二叉树并按中序和后序的方式遍历该二叉树。Input连续输入多组数据,每组数据输入一个长度小于50个字符的字符串。Output每组输入数据对应输出2行:第1行输出中序遍历序列;第2行输出后序遍历序列。SampleInputabc,,de,g,,f,,,Outputcbeg...原创 2022-01-18 15:02:27 · 295 阅读 · 0 评论 -
sdut oj 实验9- 字符串的应用
A - C语言实验——字符编码Description请将一串长度为5的纯字母文本译成一个密码,密码规律如下:用原来的字母后面的第4个字母代替原来的字母。如C用G代替(文本中不存在W/w、X/x、Y/y、Z/z等字母),最后得到的文本即为密码。Input输入一串文本,长度固定为5。Output输出对应的密码。格式为:password is 密码SampleInputChinaOutputpassword is Glmre#include<std..原创 2021-11-12 21:36:23 · 2423 阅读 · 0 评论 -
sdut oj 实验8- 指针的应用
A - 小泉的难题Description机械实验班有个同学叫小泉,有一天数学老师给小泉布置了一道个人作业,给小泉M(M<=100)组数据,每组数据有N个正整数(N<=100)让他把每组的N个数按升序排成一行,但由于数的数目比较多,人工做很费时,于是小泉就想到了喜欢编程序的你,请你帮他解决这个问题,可不要让他失望噢。Input输入包括M+1行,第一行是两个正整数M、N;M表示总共多少组数据,下面M行每行包含N个正整数。(输入数据之间会用空格隔开)Output输出包括M行,每原创 2021-11-06 21:32:00 · 622 阅读 · 0 评论 -
sdut oj 实验6-二维数组(已完结)
A - C语言实验——求一个3*3矩阵对角线元素之和Description给定一个3*3的矩阵,请你求出对角线元素之和。Input按照行优先顺序输入一个3*3矩阵,每个矩阵元素均为整数。Output从左下角到右上角这条对角线上的元素之和SampleInput1 2 33 4 56 0 1Output13#include<stdio.h>int main(){ int a[3][3]; int i,j,sum; ..原创 2021-11-02 21:36:34 · 679 阅读 · 0 评论 -
sdut oj 实验5-一维数组(已完结)
A - C语言实验——最值Description有一个长度为n的整数序列,其中最大值和最小值不会出现在序列的第一和最后一个位置。请写一个程序,把序列中的最小值与第一个数交换,最大值与最后一个数交换。输出转换好的序列。Input输入包括两行。第一行为正整数n(1≤n≤10)。第二行为n个正整数组成的序列。Output输出转换好的序列。数据之间用空格隔开。SampleInput62 3 8 1 4 5Output1 3 5 2 4 8#inclu..原创 2021-10-30 21:31:53 · 3561 阅读 · 1 评论 -
sdut oj实验4-for循环程序设计(已完结)
#include<iostream>#include<iomanip>using namespace std;int main(){ cout<<setiosflags(ios::fixed)<<setprecision(5); double PI; int n; cin>>n; for (int i = 1 ; i <= n ; i++){ PI=PI+1.0/(4*i-3...原创 2021-10-21 21:11:03 · 734 阅读 · 0 评论 -
sdut oj 实验7 函数的应用
A - C语言实验——计算表达式Description计算下列表达式值:Input输入x和n的值,其中x为非负实数,n为正整数。Output输出f(x,n),保留2位小数。SampleInput3 2Output2.00#include<iostream>#include<math.h>#include<iomanip>using namespace std;double f(doub...原创 2021-10-23 21:31:16 · 1407 阅读 · 0 评论 -
压岁钱 10.13
#include<iostream>using namespace std;int main(){ int i,n,money=1000000; cin>>i; while(i--) { cin>>n; if(money%n==0) cout<<money/n<<endl; else cout<<"No"<<endl; } return 0;}**一定看清楚题目要求的数字!!!...原创 2021-10-13 19:45:46 · 111 阅读 · 0 评论