首页 > TAG信息列表 > swust

SWUST OJ492: 荷兰国旗问题

题目描述 荷兰国旗的问题是重新排列一系列字符R,W和B(红色,白色和蓝色是荷兰国旗的颜色),以便所有R首先出现,W紧随其后,B最后。针对此问题设计线性且稳定的算法。 输入 two lines, the first line is total of numbers characters R,W and B ,and the numbers less than 500005 the se

SWUST OJ142: 猴子报数

题目描述 n个猴子围坐一圈并按照顺时针方向从1到n编号,从第s个猴子开始进行1到m的报数,报数到第m的猴子退出报数,从紧挨它的下一个猴子重新开始1到m的报数,如此进行下去知道所有的猴子都退出为止。求给出这n个猴子的退出的顺序表。 输入 有做组测试数据.每一组数据有两行,第一行输入n

SWUST OJ144: 简单的求和

题目描述 求=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字。例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制。 输入 输入两个数.第一个为a ,第二个为n(表示有多少个数相加),其中a和n都是大于1且小于10的整数. 输出 输出其和. 样例输入 2 5 样例输出 24960 #include<stdio.

SWUST OJ 1098: 堆的判断

题目描述 编写程序判断以下给出的整数序列是否为最小堆。 输入 第一行是元素的个数n; 第二行是n个整数序列。 输出 如果是小根堆,输出Yes,否者输出No。 样例输入 10 100 86 48 73 35 39 42 57 66 21 样例输出 No 参考程序 #include<stdio.h> #include<stdlib.h> void judge(int

SWUST OJ 1055: 邻接矩阵到邻接表

题目描述 假设无向图G采用邻接矩阵存储,编写一个算法输出邻接表。 输入 第一行为一个整数n,表示顶点的个数(顶点编号为0到n-1),接下来是为一个n*n大小的整数矩阵,表示图的邻接关系。数字为0表示不邻接,1表示邻接。 输出 输出图G的邻接表。第一行表示顶点0可直接到达的顶点编号。其他

SWUST OJ 1028: 特定字符序列的判断

题目描述 编写一程序,识别依次读入的一个以“#”为结束符的字符序列是否为形如“序列1@序列2”模式的字符序列。期中序列1和序列2中都不含字符“@”,且序列2是序列1的逆序列。例如“a+b@b+a”是满足条件的序列字符,而“1+3@3-1”则不是。 输入 一个以“#”结束的字符序列。 输出

SWUST OJ 1027: 舞伴问题

题目描述 假设在周末舞会上,男士们和女士们进入舞厅时,各自排成一队。跳舞开始时,依次从男队和女队的队头上各出一人配成舞伴。若两队初始人数不相同,则较长的那一队中未配对者等待下一轮舞曲。要求编写程序实现舞伴问题。 输入 输入一共5行,第一行是男生人数m;第二行依次是男生的

SWUST OJ 964: 数细胞

题目描述 一矩形阵列由数字0到9组成,数字1到9代表细胞,细胞的定义为沿细胞数字上下左右还是细胞数字则为同一细胞,求给定矩形阵列的细胞个数。编程需要用到的队列及其相关函数已经实现,你只需要完成count函数以及主函数即可。 #include<iostream> #include<cstdlib> using name

SWUST OJ 617: 班级课程成绩计算

题目描述 一个班有N名学生,每个学生修了五门课。 1)求每个学生的平均成绩,并输出每个学生的学号,每门课程的成绩及平均值。 2)求某门课程的平均分; 1、分别编写2个函数实现以上2个要求。 2、第1个函数用数组名作参数。第2个函数用指针作参数,并在函数体内用指针对数组操作。 输入 第

SWUST OJ 287: one + two = 3

题目描述 读入两个小于100的正整数A和B,计算A+B。需要注意的是:A和B的每一位数字由对应的英文单词给出。 输入 测试输入包含若干测试用例,每个测试用例占一行,格式为"A + B =",相邻两字符串有一个空格间隔。当A和B同时为0时输入结束,相应的结果不要输出。 输出 对每个测试用例输出1

SWUST OJ 281: 逃跑的蠕虫

题目描述 装在瓶子(瓶子高度为h)的蠕虫都想从瓶子底部向瓶口处爬出去。它每分钟向上爬行u厘米,之后会休息一分钟,这一分钟它会向下滑行d厘米,当蠕虫到了瓶口或者超出瓶口后便出了瓶口,成功逃离(每分钟计算一次位置)。编写一个函数,帮助蠕虫计算它在什么时候能够爬出瓶子。 输入 连续

SWUST OJ 82: 求组合数

题目描述 编写一个函数,求从n 个不同的数中取r 个数的所有选择的个数。 输入 输入n 和r 的值; 当用户输入0 0 时,程序结束。 输出 根据公式: C(n,r) = C(n, r-1) * (n - r + 1) / r 输出运算结果 输入数据不满足题意时候,输出"error!" 样例输入 5 3 10 20 50 3 0 0 样例输出 10 er

SWUST OJ1157n个数的最小公倍数

题目描述 求n个数的最小公倍数。 输入 多组测试数据,第一行一个数n (0 < n <= 10),下面n个数,integer范围内。 输出 这n个数的最小公倍数。 样例输入 5 6 3 5 4 2 样例输出 60 #include<stdio.h> int main() { int n; int i; int a[100]; int sum; int b[100]; while (scanf(

西南科技大学 swust OJ 943: 顺序表插入操作的实现

题目描述 建立长度为n的顺序表,在指定的数据元素item之前插入数据元素data。如果指定的数据元素item不存在,则将data插入到顺序表的尾端。(数据类型为整型) 输入 第一行为顺序表的长度n; 第二行为顺序表中的数据元素; 第三行为指定的数据元素item; 第四行为要插入的数据元素data; 输出

SWUST OJ #78: 计算生日是星期几

题目描述 编写一个程序,只要输入年月日,就能回答那天是星期几。 能被4整除但不能被100整除的,或者能被400整除的是闰年。 输入一个日期,包括年、月、日。(一组测试数据) 输出这个日期是星期几。 #include<stdio.h>int main(){    int n,y,r;    while(scanf("%d %d %d

SWUST#953: 单链表的删除操作的实现

953: 单链表的删除操作的实现 题目描述 建立长度为n的单链表,删除第i个结点之前的结点 。 输入 第一行为自然数n,表示链式线性表的长度; 第二行为n个自然数表示链式线性表各元素值; 第三行为指定的删除参数i。 输出 指定删除位置合法时候,输出删除元素后的链式线性表的所有元

Swust OJ1065: 无向图的连通分量计算

题目描述: 假设无向图G采用邻接矩阵存储,编写一个算法求连通分量的个数。 输入:第一行为一个整数n,表示顶点的个数(顶点编号为0到n-1),接下来是为一个n*n大小的整数矩阵,表示图的邻接关系。数字为0表示不邻接,1表示不邻接。输出:连通分量的个数 相关知识:    利用图的深度优先搜索(DFS):从图中

SWUST OJ 1027.舞伴问题

1027. 舞伴问题 题目链接-1027. 舞伴问题 解题思路 用STL里面的queue实现出队跳舞和跳完舞归队两个过程循环即可 附上代码 #include<bits/stdc++.h> #define int long long #define lowbit(x) (x &(-x)) using namespace std; const int INF=0x3f3f3f3f; const double PI=a

swust oj 982

输出利用二叉树存储的普通树的度 1000(ms) 10000(kb) 2619 / 5991 普通树可转换成相应的二叉树(该二叉树的根结点一定缺少右儿子),反之亦然。故而可以根据相应的转换方法去统计某一二叉树对应的普通树的度。普通树的度为其结点儿子数的最大值。相应的二叉树可利用二叉树的先序递

swust oj 983

利用二叉树中序及后序遍历确定该二叉树的先序序列 1000(ms) 10000(kb) 2606 / 4908 已知二叉树的中序和先序遍历可以唯一确定后序遍历、已知中序和后序遍历可以唯一确定先序遍历,但已知先序和后序,却不一定能唯一确定中序遍历。现要求根据输入的中序遍历结果及后序遍历结果,要求

swust oj 984

利用二叉树中序及先序遍历确定该二叉树的后序序列 1000(ms) 10000(kb) 2754 / 5599 已知二叉树的中序和先序遍历可以唯一确定后序遍历、已知中序和后序遍历可以唯一确定先序遍历,但已知先序和后序,却不一定能唯一确定中序遍历。现要求根据输入的中序遍历结果及先序遍历结果,要求

swust oj 971

  统计利用先序遍历创建的二叉树的深度 10000(ms) 10000(kb) 3331 / 8436 利用先序递归遍历算法创建二叉树并计算该二叉树的深度。先序递归遍历建立二叉树的方法为:按照先序递归遍历的思想将对二叉树结点的抽象访问具体化为根据接收的数据决定是否产生该结点从而实现创建该二

swust oj 972

统计利用先序遍历创建的二叉树的宽度 1000(ms) 10000(kb) 2938 / 6810 利用先序递归遍历算法创建二叉树并计算该二叉树的宽度。先序递归遍历建立二叉树的方法为:按照先序递归遍历的思想将对二叉树结点的抽象访问具体化为根据接收的数据决定是否产生该结点从而实现创建该二叉树

swust oj 956

约瑟夫问题的实现 2000(ms) 65535(kb) 3266 / 10775 n个人围成一个圈,每个人分别标注为1、2、...、n,要求从1号从1开始报数 ,报到k的人出圈,接着下一个人又从1开始报数,如此循环,直到只剩最后 一个人时,该人即为胜利者。例如当n=10,k=4时,依次出列的人分别为4、8 、2、7、3、10,9、1、6、

swust oj 962

括号匹配问题 1000(ms) 65535(kb) 3045 / 13375 假设表达式中允许包含两种括号:圆括号和方括号。编写一个算法判断表达式中的括号是否正确配对。 输入 由括号构成的字符串,包含”(“、”)“、”[“和”]“。 输出 如果匹配输出YES,否则输出NO。 样例输入 [([][]())] 样例输