- 博客(81)
- 收藏
- 关注
原创 7-42 图的先广搜索分数 15
输出无向图的给定起点的先广序列。输入格式:输入第一行给出三个正整数,分别表示无向图的节点数N(1<N≤10)、边数M(≤50)和探索起始节点编号S(节点从1到N编号)。随后的M行对应M条边,每行给出一对正整数,分别是该条边直接连通的两个节点的编号。输出格式:输出从S开始的无向图的先广搜索序列,用一个空格隔开,最后也有一个空格;如果为非连通图,再在结尾处另起一行输出一个0,表示此图非连通。由于广度优先遍历的节点序列是不唯一的,为了使得输出具有唯一的结果,我们约定以表头插入法构造邻
2023-06-08 09:06:40
358
原创 7-43 密接判定v1(close_contact1)
Omicron变种病毒传染性太强了,城市屡屡破防。封闭在家的我决定为防疫做点事:帮助筛选密切接触、次密切接触人员。网格员提供了一些小区的风险时段内的接触记录、确诊人员,需要判断人员的风险分类:A类:疑似病例、临床诊断病例、确诊病例。(输入数据) B类:与A类人员有接触的人员。(需要判断) C类:与B类人员有接触的人员。(需要判断) D类:其他人员。输入规格输入的数据有多组,处理至EOF为止。 每组数据 首行有4项:日期D(字符串)、小区人数N、接触记录数量C、确诊人数P,间隔1个空格。
2022-06-08 23:41:22
1711
原创 7-5 不同的字符串分数 20
wsl有好多个字符串,但是他不知道他总共有多少个不相同的字符串,所以想请你帮他数一数总共有几个不相同的字符串我们忽略字母的大小写区别,比如TLYY和tlyy我们认为是相同的字符串。认为两个字符串a,b相同当且仅当a[i]==b[i]或者a[i]b[i]为同一个字母的大小写。∀i...
2022-06-08 23:41:06
454
原创 7-51 快速排序分数 20
给定一个整数序列,请按非递减序输出采用快速排序(递归法)的各趟排序后的结果。注意:每趟排序以排序区间的首元素为枢轴(支点)。测试数据有多组,处理到文件尾。每组测试数据第一行输入一个整数n(1≤n≤100),第二行输入n个整数。对于每组测试,输出若干行,每行是一趟排序后的结果,每行的每两个数据之间留一个空格。输出样例:代码长度限制16 KB时间限制400 ms内存限制64 MB...
2022-06-08 23:39:25
1266
原创 7-49 快速排序分数 20
给定包含n个元素的整型数组a[1],a[2],...,a[n],利用快速排序算法对其进行递增排序,请输出排序过程,即每次Partition之后的数组。每次选择所处理的子数组的第一个元素作为基准元素。输入为两行,第一行为一个整数n(1...
2022-06-08 23:38:17
1409
原创 7-50 点赞狂魔分数 25
微博上有个“点赞”功能,你可以为你喜欢的博文点个赞表示支持。每篇博文都有一些刻画其特性的标签,而你点赞的博文的类型,也间接刻画了你的特性。然而有这么一种人,他们会通过给自己看到的一切内容点赞来狂刷存在感,这种人就被称为“点赞狂魔”。他们点赞的标签非常分散,无法体现出明显的特性。本题就要求你写个程序,通过统计每个人点赞的不同标签的数量,找出前3名点赞狂魔。输入在第一行给出一个正整数N(≤100),是待统计的用户数。随后N行,每行列出一位用户的点赞标签。格式为“ K F1⋯FK”,其中是不超过8个英文小写字
2022-06-08 23:37:00
288
原创 7-48 对称排序分数 25
你供职于由一群丑星作为台柱子的信天翁马戏团。你刚完成了一个程序编写,它按明星们姓名字符串的长度非降序(即当前姓名的长度至少与前一个姓名长度一样)顺序输出他们的名单。然而,你的老板不喜欢这种输出格式,提议输出的首、尾名字长度较短,而中间部分长度稍长,显得有对称性。老板说的具体办法是对已按长度排好序的名单逐对处理,将前者放于当前序列的首部,后者放在尾部。如输入样例中的第一个案例,Bo和Pat是首对名字,Jean和Kevin是第二对,余此类推。输入包含若干个测试案例。每个案例的第一行含一个整数n(n>=1),表示
2022-06-08 23:34:20
174
原创 7-47 成绩排序分数 30
某班有n个学生,输入该班这n个学生的姓名、某三门课的成绩,计算各自的平均成绩,存放到一个结构数组中,将平均成绩作为关键字,然后把该这些学生的名字和平均成绩按从大到小的顺序排列输出.如果有相同分数则名字字典序小的在前。第一行为人数n,n为正整数.接下来的n行,每行为每个学生的名字和他的3门课程的成绩(小数点后最多有2位小数), 中间用单个空格隔开.名字只包含字母且长度不超过20.即:学生的姓名 分数 分数 分数.把成绩单按平均分数从高到低的顺序进行排序并输出,每行包含名字和分数,两项之间有一个空格.如果有相同
2022-06-08 23:32:15
384
原创 7-46 词频统计分数 30
请编写程序,对一段英文文本,统计其中所有不同单词的个数,以及词频最大的前10%的单词。所谓“单词”,是指由不超过80个单词字符组成的连续字符串,但长度超过15的单词将只截取保留前15个单词字符。而合法的“单词字符”为大小写字母、数字和下划线,其它字符均认为是单词分隔符。输入给出一段非空文本,最后以符号结尾。输入保证存在至少10个不同的单词。在第一行中输出文本中所有不同单词的个数。注意“单词”不区分英文大小写,例如“PAT”和“pat”被认为是同一个单词。随后按照词频递减的顺序,按照的格式输出词频最大的前10
2022-06-08 23:30:38
230
原创 7-45 词频统计分数 15
输出一行字符,统计出现词的频率。输出一行字符,用gets()读入,不超过80个字符。每个单词用一个或多个空格分开。单词个数的约定,最多为40个单词,每个单词最长为9。按出现的顺序输出单词及出现的次数,中间用“:”分隔。每行一个单词及次数。在这里给出一组输入。例如:输出样例:在这里给出相应的输出。例如:代码长度限制16 KB时间限制400 ms内存限制64 MB...
2022-06-08 23:29:10
114
原创 7-23 LC的绝地求生分数 25
LC在他小时候特别迷恋绝地求生,他就幻想着有一天能被扔到一个孤岛,他想算出整个岛屿的面积。简化题意为一个n∗n的地图,共有n∗n个面积为1格子,地图左上角的格子编号为(1,1)右下角的格子编号为为(n,n)。地图上为每个格子做了标记,若编号为(x,y)的格子标记位0则代表这个区域是海,否则为陆地。现在LC空投到(sx,sy)位置,他想知道他所在的岛屿的面积。注意,可能不止一个岛屿,只用求LC所在的岛屿面积。输入格式:第一行给出一个正整数n(1&...
2022-05-27 19:38:33
198
原创 7-41 图深度优先遍历分数 20
编写程序对给定的有向图(不一定连通)进行深度优先遍历,图中包含n个顶点,编号为0至n-1。本题限定在深度优先遍历过程中,如果同时出现多个待访问的顶点,则优先选择编号最小的一个进行访问,以顶点0为遍历起点。输入格式:输入第一行为两个整数n和e,分别表示图的顶点数和边数,其中n不超过20000,e不超过50。接下来e行表示每条边的信息,每行为两个整数a、b,表示该边的端点编号,但各边并非按端点编号顺序排列。输出格式:输出为一行整数,每个整数后一个空格,即该有向图的深度优先遍历结点序列。输入样
2022-05-25 21:55:49
902
原创 7-40 图的先深搜索分数 15
输出无向图的给定起点的先深序列。输入格式:输入第一行给出三个正整数,分别表示无向图的节点数N(1<N≤10)、边数M(≤50)和探索起始节点编号S(节点从1到N编号)。随后的M行对应M条边,每行给出一对正整数,分别是该条边直接连通的两个节点的编号。输出格式:输出从S开始的无向图的先深搜索序列,用一个空格隔开,最后也有一个空格;如果为非连通图,再在结尾处另起一行输出一个0,表示此图非连通。由于深度优先遍历的节点序列是不唯一的,为了使得输出具有唯一的结果,我们约定以表头插入法构造邻
2022-05-25 21:54:56
1098
原创 7-38 图的创建分数 20
请编写程序创建一个有向图。有向图中包含n个顶点,编号为0至n-1。输入格式:输入第一行为两个正整数n和e,分别表示图的顶点数和边数,其中n不超过20000,e不超过20000。接下来e行表示每条边的信息,每行为3个非负整数a、b、c,其中a和b表示该边的端点编号,c表示权值。各边并非按端点编号顺序排列。输出格式:按顶点编号递增顺序输出每个顶点引出的边,每个顶点占一行,若某顶点没有引出边,则不输出。每行表示一个顶点引出的所有边,格式为a:(a,b,w)……,表示有向边a->b的权值为w,
2022-05-25 21:54:01
676
原创 循环单链表区间删除 (15 分)
本题要求实现带头结点的循环单链表的创建和单链表的区间删除。L是一个带头结点的循环单链表,函数ListCreate_CL用于创建一个循环单链表,函数ListDelete_CL用于删除取值大于min小于max的链表元素。函数接口定义: Status ListCreate_CL(LinkList &CL); void ListDelete_CL(LinkList &CL,ElemType min,ElemType max);裁判测试程序样例://库函数头文件包
2022-02-20 17:40:31
710
转载 顺序表操作集 (20 分)
本题要求实现顺序表的操作集。函数接口定义:List MakeEmpty(); Position Find( List L, ElementType X );bool Insert( List L, ElementType X, Position P );bool Delete( List L, Position P );其中List结构定义如下:typedef int Position;typedef struct LNode *List;struct LNode {
2022-02-20 17:19:01
168
原创 带头结点的链式表操作集 (20 分)
本题要求实现带头结点的链式表操作集。函数接口定义:List MakeEmpty(); Position Find( List L, ElementType X );bool Insert( List L, ElementType X, Position P );bool Delete( List L, Position P );其中List结构定义如下:typedef struct LNode *PtrToLNode;struct LNode { ElementType
2022-02-20 16:58:34
202
原创 一元多项式的乘法与加法运算 (20 分)
设计函数分别求两个一元多项式的乘积与和。输入格式:输入分2行,每行分别先给出多项式非零项的个数,再以指数递降方式输入一个多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。输出格式:输出分2行,分别以指数递降方式输出乘积多项式以及和多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。零多项式应输出0 0。输入样例:4 3 4 -5 2 6 1 -2 03 5 20 -7 4 3 1输出样例:15 24 -25 22 30
2022-02-20 11:57:41
74
原创 两个有序链表序列的合并 (15 分)
本题要求实现一个函数,将两个链表表示的递增整数序列合并为一个非递减的整数序列。函数接口定义:List Merge( List L1, List L2 );其中List结构定义如下:typedef struct Node *PtrToNode;struct Node { ElementType Data; /* 存储结点数据 */ PtrToNode Next; /* 指向下一个结点的指针 */};typedef PtrToNode List; /* 定义单链表
2022-02-20 11:48:00
214
原创 递增的整数序列链表的插入 (15 分)
本题要求实现一个函数,在递增的整数序列链表(带头结点)中插入一个新整数,并保持该序列的有序性。函数接口定义:List Insert( List L, ElementType X );其中List结构定义如下:typedef struct Node *PtrToNode;struct Node { ElementType Data; /* 存储结点数据 */ PtrToNode Next; /* 指向下一个结点的指针 */};typedef PtrToNode
2022-02-20 11:43:46
333
原创 带头结点的双向循环链表操作集 (25 分)
本题要求实现一个带头结点的双向循环链表操作集。函数接口定义:typedef int dataType;typedef struct _node{ dataType data; struct _node *prev;//指向前驱的指针 struct _node *next;//指向后继的指针}node;typedef node* List;List create_list();//创建一个空的循环链表,返回指向头节点的指针。void insert(List
2022-02-20 11:39:56
2819
原创 求单链表最小值 (6 分)
本题要求实现一个函数,返回带头结点的单链表中最小元素的地址。函数接口定义:LinkList MinP( LinkList L);L是带头结点的单链表的头指针,函数MaxP返回表中最小元素的地址。如果单链表为空,返回空指针。其中LinkList结构定义如下:typedef struct LNode{ ElemType data; struct LNode *next;}LNode,*LinkList;裁判测试程序样例:#include <std
2022-02-18 19:52:29
3902
原创 求单链表最大值 (6 分)
本题要求实现一个函数,返回带头结点的单链表中最大元素的地址。函数接口定义:LinkList MaxP( LinkList L);L是带头结点的单链表的头指针,函数MaxP返回表中最大元素的地址。如果单链表为空,返回空指针。其中LinkList结构定义如下:typedef struct LNode{ ElemType data; struct LNode *next;}LNode,*LinkList;裁判测试程序样例:#include <std
2022-02-18 19:50:58
5874
3
原创 链表的插入算法 (30 分)
本题要求实现一个插入函数,实现在链表llist中的元素x之后插入一个元素y的操作。函数接口定义:int InsertPost_link(LinkList llist, DataType x, DataType y);其中 llist是操作的链表,x是待插入元素y的前驱节点元素,y是待插入的元素裁判测试程序样例:#include<stdio.h>#include<stdlib.h>typedef int DataType; struct Node {
2022-02-18 19:41:06
1458
1
原创 带头结点的单链表删除操作 (10 分)
本题要求实现删除单链表的第i个元素结点,删除成功返回1,否则返回0。函数接口定义:int delete_link ( LinkList L,int i);L为单链表的头指针,i为删除结点的序号。裁判测试程序样例:#include <stdio.h>#include <stdlib.h>typedef int ElemType;typedef struct LNode{ ElemType data; struct LNode *nex
2022-02-18 19:35:56
4201
原创 有头结点的链表创建 (30 分)
有一链式结构,定义如下 :struct stu{char name[20];int no;struct stu *next;};创建一个函数myCreate(head,m),head为链表的头结点,m为要创建的结点个数。函数功能是创建一个带有头结点的链表,结点个数由m指定,在函数中需要将每个结点的数据域输入,函数的返回值为int类型,1代表创建成功,0代表创建失败(失败的原因可能是输入数据有误或内存空间不足等)。创建 函数 show(head),显示带有头结点的链表head的全部节点信息。没有
2022-02-18 19:27:13
4706
原创 头插法创建单链表(C) (25 分)
本题要求实现两个函数,输入n个数据,采用头插法创建单链表并打印。例如:如果输入4 ,再输入3 7 9 5,则应打印输出5 9 7 3。链表结点结构定义:struct Node { //链表结点 int data; //数据 struct Node* link; //指向下一个结点的指针};函数接口定义:/* 头插法建立单链表:返回单链表的头指针 */struct Node* buildLinkedList(int* arr, int n);
2022-02-18 18:18:33
1330
原创 尾插法创建单链表(C) (25 分)
本题要求实现两个函数,输入n个数据,采用尾插法创建单链表并打印。例如:如果输入4 ,再输入3 7 9 5,则应打印输出3 7 9 5。链表结点结构定义:struct Node { //链表结点 int data; //数据 struct Node* link; //指向下一个结点的指针};函数接口定义:/* 尾插法建立单链表:返回单链表的头指针 */struct Node* buildLinkedList(int* arr, int n); /*
2022-02-18 18:15:32
1011
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人