- 博客(48)
- 收藏
- 关注
原创 Linux系统安装numpy
打开终端。 输入python,查看python环境是否正常以及版本信息,之后退出。 再打开终端输入以下命令,安装numpy库: sudo apt-get install python-numpy 进入python环境,进行测试: from numpy inport * 若正常运行,则说明安装成功。 ...
2021-06-07 09:07:13
5108
原创 程序设计思维与实践题目汇总
本文包括本学期程序设计思维与实践课程内题目的博客链接。 作业: 包括完整2至10周题目,11周至15周只写了部分选做题。 第二周 A B 第三周 A B C 第四周 A B C 第五周 A B C D 第六周 A B C D 第七周 A B C 第八周 A B C 第九周 A B C 第十周 A B C 第十一周 E F 第十二周 D
2020-07-10 20:20:54
503
原创 画图 第1月 模拟题
题目: 用 ASCII 字符来画图是一件有趣的事情,并形成了一门被称为 ASCII Art 的艺术。例如,下图是用 ASCII 字符画出来的 CSPRO 字样。 ….………_… ././.||….|……/.… |.|…_.|.|).|.|).|.|.|.| |.|.).|…/|….<|.||.| ._|/||…||._\___/. 本题要求编程实现一个用 ASCII 字符来画图的程序,支持以下两种操作: Ÿ 画线:给出两个端点的坐标,画一条连接这两个端点的线段。简便起见题目
2020-07-10 17:34:12
282
原创 ZJM要抵御宇宙射线 Week16 CSPM4 B题
思路: 枚举圆心,然后选择该圆心到其他所有点距离的最大值的平方作为半径的平方。 注意答案提交的是平方,测试时没有注意到这个问题。 代码: #include<iostream> #include<cstdio> #include<cmath> using namespace std; int n; double x,y,xx[1010],yy[1010],ans=1e11,minn; int main() { cin>>n; for(int i=1;i&l.
2020-07-10 15:52:15
233
原创 消消乐大师——Q老师 Week12 CSPM3 B题
思路: 模拟题目过程,进行扫描。 代码: #include <stdio.h> #include <string.h> int n,m; int ele[35][35]; int flag[35][35]; void check1(int &x,int &y){//检验所在行 if(y-1<0 || y+1>=m) return; if(ele[x][y]==ele[x][y-1] && ele[x][y]==ele[x][.
2020-07-10 15:37:35
228
原创 瑞神的序列 Week12 CSPM3 A题
思路: 答案sum,其中,在i==1处ans=1,i>=2时,若a[i]!=a[i-1],ans++. 代码: #include <stdio.h> int num[1005]; int n; int main(){ scanf("%d",&n); int sum=1; int x; for(int i=0;i<n;i++) { scanf("%d",&num[i]); if(i==0) x=num[i]; } for(int i.
2020-07-10 15:33:39
198
原创 咕咕东的奇妙序列 Week8 CSPM2 C题
思路: 定义:第i项为数字12…i,若i3,则序列s3为123,共占3位,若i10,则序列s10为12345678910,共占11位。 由于序列是通过s1s2s3s4…的形式组合,是有序的,因此可以通过二分的方式,判断出要求的第k位位于哪一个si中,假设二分出的答案是:第k位位于第i项中,则这一位在第i项中的序号为:kk=k-a[i-1],a[i-1]表示s1s2…si-1共有多少位。 得到k在序列si中的位置kk后,因为si是序列12345…i的排列,有一位数,二位数,三位数…构成,然后判断kk位于哪位.
2020-07-10 15:23:32
373
原创 HRZ 学英语 Week8 CSPM2 B题
思路: 使用“尺取法”,维护一个动态的窗口,该窗口不断向右移动。 设动态记录窗口中’?‘的个数n,数组记录窗口中不同字母的个数m,若m+n==26,说明已有的字母加上’?‘恰好可以构成英文字母的序列。然后按照字典序最小的原则,将’?'变成大写字母添加至序列,输出即可。 代码: #include<iostream> #include<algorithm> #include<cstring> using namespace std; string s; int n,m,a[.
2020-07-10 15:19:04
210
原创 HRZ的序列 Week8 CSPM2 A题
思路: 观察序列的特性可得,如果一个序列满足以下任意性质,则一定存在K: 1.序列中不同的数只有三个,并且其中两个的和等于另一个数的两倍。 2.序列中不同的数小于三个。 代码: #include<iostream> #include<cstring> #include<algorithm> using namespace std; long long n,a[10100],b[10100]; int main() { int T; cin>>T; wh.
2020-07-10 15:14:43
192
原创 TT 的苹果树 Week13作业D题
题目: 在大家的三连助攻下,TT 一举获得了超级多的猫咪,因此决定开一间猫咖,将快乐与大家一同分享。并且在开业的那一天,为了纪念这个日子,TT 在猫咖门口种了一棵苹果树。 一年后,苹果熟了,到了该摘苹果的日子了。 已知树上共有 N 个节点,每个节点对应一个快乐值为 w[i] 的苹果,为了可持续发展,TT 要求摘了某个苹果后,不能摘它父节点处的苹果。 TT 想要令快乐值总和尽可能地大,你们能帮帮他吗? 输入: 结点按 1~N 编号。 第一行为 N (1 ≤ N ≤ 6000) ,代表结点个数。 接下来 N 行
2020-07-10 14:58:02
206
原创 选做题-2 Week12作业E题
题目: 马上假期就要结束了,zjm还有 n 个作业,完成某个作业需要一定的时间,而且每个作业有一个截止时间,若超过截止时间,一天就要扣一分。 zjm想知道如何安排做作业,使得扣的分数最少。 Tips: 如果开始做某个作业,就必须把这个作业做完了,才能做下一个作业。 输入: 有多组测试数据。第一行一个整数表示测试数据的组数 第一行一个整数 n(1<=n<=15) 接下来n行,每行一个字符串(长度不超过100) S 表示任务的名称和两个整数 D 和 C,分别表示任务的截止时间和完成任务需要的天数。
2020-07-10 14:42:43
196
原创 选做题-1 Week12作业D题
题目: We give the following inductive definition of a “regular brackets” sequence: the empty sequence is a regular brackets sequence, if s is a regular brackets sequence, then (s) and [s] are regular brackets sequences, and if a and b are regular brackets se
2020-07-10 14:17:56
226
原创 东东开车了 Week11作业F题
题目: 东东开车出去泡妞(在梦中),车内提供了 n 张CD唱片,已知东东开车的时间是 n 分钟,他该如何去选择唱片去消磨这无聊的时间呢 假设: CD数量不超过20张 没有一张CD唱片超过 N 分钟 每张唱片只能听一次 唱片的播放长度为整数 N 也是整数 我们需要找到最能消磨时间的唱片数量,并按使用顺序输出答案(必须是听完唱片,不能有唱片没听完却到了下车时间的情况发生) 本题是 Special Judge 输入: 多组输入 每行输入第一个数字N, 代表总时间,第二个数字 M 代表有 M 张唱片,后面紧跟 M
2020-07-10 14:10:39
156
原创 东东与ATM Week11作业E题
题目: 一家银行计划安装一台用于提取现金的机器。 机器能够按要求的现金量发送适当的账单。 机器使用正好N种不同的面额钞票,例如D_k,k = 1,2,…,N,并且对于每种面额D_k,机器都有n_k张钞票。 例如, N = 3, n_1 = 10,D_1 = 100, n_2 = 4,D_2 = 50, n_3 = 5,D_3 = 10 表示机器有10张面额为100的钞票、4张面额为50的钞票、5张面额为10的钞票。 东东在写一个 ATM 的程序,可根据具体金额请求机器交付现金。 注意,这个程序计算程序得出的
2020-07-10 14:03:14
146
原创 拿数问题 II Week10作业C题
题目: YJQ 上完第10周的程序设计思维与实践后,想到一个绝妙的主意,他对拿数问题做了一点小修改,使得这道题变成了 拿数问题 II。 给一个序列,里边有 n 个数,每一步能拿走一个数,比如拿第 i 个数, Ai = x,得到相应的分数 x,但拿掉这个 Ai 后,x+1 和 x-1 (如果有 Aj = x+1 或 Aj = x-1 存在) 就会变得不可拿(但是有 Aj = x 的话可以继续拿这个 x)。求最大分数。 输入: 第一行包含一个整数 n (1 ≤ n ≤ 105),表示数字里的元素的个数 第二行包
2020-07-10 12:00:55
147
原创 LIS & LCS Week10作业B题
题目: 东东有两个序列A和B。 他想要知道序列A的LIS和序列AB的LCS的长度。 注意,LIS为严格递增的,即a1<a2<…<ak(ai<=1,000,000,000)。 输入: 第一行两个数n,m(1<=n<=5,000,1<=m<=5,000) 第二行n个数,表示序列A 第三行m个数,表示序列B 输出: 输出一行数据ans1和ans2,分别代表序列A的LIS和序列AB的LCS的长度 样例: Input: 5 5 1 3 2 5 4 2 4 3 1 5
2020-07-10 11:22:58
167
原创 签到题 Week10作业A题
题目: 东东在玩游戏“Game23”。 在一开始他有一个数字n,他的目标是把它转换成m,在每一步操作中,他可以将n乘以2或乘以3,他可以进行任意次操作。输出将n转换成m的操作次数,如果转换不了输出-1。 输入: 输入的唯一一行包括两个整数n和m(1<=n<=m<=5*10^8). 输出: 输出从n转换到m的操作次数,否则输出-1. 样例: Input: 120 51840 Output: 7 Input: 42 42 Output: 0 Input: 48 72 Output:
2020-07-10 11:17:34
163
原创 签到题 Week9作业C题
题目: SDUQD 旁边的滨海公园有 x 条长凳。第 i 个长凳上坐着 a_i 个人。这时候又有 y 个人将来到公园,他们将选择坐在某些公园中的长凳上,那么当这 y 个人坐下后,记k = 所有椅子上的人数的最大值,那么k可能的最大值mx和最小值mn分别是多少。 输入: 第一行包含一个整数 x (1 <= x <= 100) 表示公园中长椅的数目 第二行包含一个整数 y (1 <= y <= 1000) 表示有 y 个人来到公园 接下来 x 个整数 a_i (1<=a_i<
2020-07-10 11:12:06
158
原创 东东学打牌 Week9作业B题
题目: 最近,东东沉迷于打牌。所以他找到 HRZ、ZJM 等人和他一起打牌。由于人数众多,东东稍微修改了亿下游戏规则: 所有扑克牌只按数字来算大小,忽略花色。 每张扑克牌的大小由一个值表示。A, 2, 3, 4, 5, 6, 7, 8, 9, 10, J, Q, K 分别指代 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13。 每个玩家抽得 5 张扑克牌,组成一手牌!(每种扑克牌的张数是无限的,你不用担心,东东家里有无数副扑克牌) 理所当然地,一手牌是有不同类型,并且有大小
2020-07-10 11:02:55
178
原创 咕咕东的目录管理器 Week9作业A题
题目: 咕咕东的雪梨电脑的操作系统在上个月受到宇宙射线的影响,时不时发生故障,他受不了了,想要写一个高效易用零bug的操作系统 —— 这工程量太大了,所以他定了一个小目标,从实现一个目录管理器开始。前些日子,东东的电脑终于因为过度收到宇宙射线的影响而宕机,无法写代码。他的好友TT正忙着在B站看猫片,另一位好友瑞神正忙着打守望先锋。现在只有你能帮助东东! 初始时,咕咕东的硬盘是空的,命令行的当前目录为根目录 root。 目录管理器可以理解为要维护一棵有根树结构,每个目录的儿子必须保持字典序。 现在咕咕东可以在
2020-07-10 10:55:30
160
原创 班长竞选 Week8作业C题
题目: 大学班级选班长,N 个同学均可以发表意见 若意见为 A B 则表示 A 认为 B 合适,意见具有传递性,即 A 认为 B 合适,B 认为 C 合适,则 A 也认为 C 合适 勤劳的 TT 收集了M条意见,想要知道最高票数,并给出一份候选人名单,即所有得票最多的同学,你能帮帮他吗? 输入: 本题有多组数据。第一行 T 表示数据组数。每组数据开始有两个整数 N 和 M (2 <= n <= 5000, 0 <m <= 30000),接下来有 M 行包含两个整数 A 和 B(A !
2020-07-10 10:30:09
163
原创 猫猫向前冲 Week8作业B题
题目: 众所周知, TT 是一位重度爱猫人士,他有一只神奇的魔法猫。 有一天,TT 在 B 站上观看猫猫的比赛。一共有 N 只猫猫,编号依次为1,2,3,…,N进行比赛。比赛结束后,Up 主会为所有的猫猫从前到后依次排名并发放爱吃的小鱼干。不幸的是,此时 TT 的电子设备遭到了宇宙射线的降智打击,一下子都连不上网了,自然也看不到最后的颁奖典礼。 不幸中的万幸,TT 的魔法猫将每场比赛的结果都记录了下来,现在他想编程序确定字典序最小的名次序列,请你帮帮他。 输入: 输入有若干组,每组中的第一行为二个数N(1&
2020-07-10 10:23:03
119
原创 区间选点 II Week8作业A题
题目: 给定一个数轴上的 n 个区间,要求在数轴上选取最少的点使得第 i 个区间 [ai, bi] 里至少有 ci 个点 使用差分约束系统的解法解决这道题 输入: 输入第一行一个整数 n 表示区间的个数,接下来的 n 行,每一行两个用空格隔开的整数 a,b 表示区间的左右端点。1 <= n <= 50000, 0 <= ai <= bi <= 50000 并且 1 <= ci <= bi - ai+1。 输出: 输出一个整数表示最少选取的点的个数 样例: Input
2020-07-10 10:16:31
145
原创 TT 的旅行日记 Week7作业B题
题目: 众所周知,TT 有一只魔法猫。 今天他在 B 站上开启了一次旅行直播,记录他与魔法猫在喵星旅游时的奇遇。 TT 从家里出发,准备乘坐猫猫快线前往喵星机场。猫猫快线分为经济线和商业线两种,它们的速度与价钱都不同。当然啦,商业线要比经济线贵,TT 平常只能坐经济线,但是今天 TT 的魔法猫变出了一张商业线车票,可以坐一站商业线。假设 TT 换乘的时间忽略不计,请你帮 TT 找到一条去喵星机场最快的线路,不然就要误机了! 输入: 输入包含多组数据。每组数据第一行为 3 个整数 N, S 和 E (2 ≤
2020-07-10 10:09:14
174
原创 TT 的美梦 Week7作业C题
题目: 这一晚,TT 做了个美梦! 在梦中,TT 的愿望成真了,他成为了喵星的统领!喵星上有 N 个商业城市,编号 1 ~ N,其中 1 号城市是 TT 所在的城市,即首都。 喵星上共有 M 条有向道路供商业城市相互往来。但是随着喵星商业的日渐繁荣,有些道路变得非常拥挤。正在 TT 为之苦恼之时,他的魔法小猫咪提出了一个解决方案!TT 欣然接受并针对该方案颁布了一项新的政策。 具体政策如下:对每一个商业城市标记一个正整数,表示其繁荣程度,当每一只喵沿道路从一个商业城市走到另一个商业城市时,TT 都会收取它们
2020-07-10 10:02:40
165
原创 TT 的魔法猫 Week7作业A题
题目: 众所周知,TT 有一只魔法猫。 这一天,TT 正在专心致志地玩《猫和老鼠》游戏,然而比赛还没开始,聪明的魔法猫便告诉了 TT 比赛的最终结果。TT 非常诧异,不仅诧异于他的小猫咪居然会说话,更诧异于这可爱的小不点为何有如此魔力? 魔法猫告诉 TT,它其实拥有一张游戏胜负表,上面有 N 个人以及 M 个胜负关系,每个胜负关系为 A B,表示 A 能胜过 B,且胜负关系具有传递性。即 A 胜过 B,B 胜过 C,则 A 也能胜过 C。 TT 不相信他的小猫咪什么比赛都能预测,因此他想知道有多少对选手的胜
2020-07-10 09:56:57
218
原创 数据中心 Week6作业D题
题目: 思路: 本题题意可以简单概括为:输出最小生成树中的最大边。 瓶颈生成树:定义无向图G,G的瓶颈生成树是一棵 “ 树上最大边权值 edge 在G的所有生成树中最小 ” 的生成树,这样的生成树可能不止一棵。 代码: #include<iostream> #include<vector> #include<cstring> #include<map> using namespace std; typedef pair<int,int> P;
2020-07-10 09:51:32
251
原创 掌握魔法の东东 I Week6作业C题
题目: 东东在老家农村无聊,想种田。农田有 n 块,编号从 1~n。种田要灌氵 众所周知东东是一个魔法师,他可以消耗一定的 MP 在一块田上施展魔法,使得黄河之水天上来。他也可以消耗一定的 MP 在两块田的渠上建立传送门,使得这块田引用那块有水的田的水。 (1<=n<=3e2) 黄河之水天上来的消耗是 Wi,i 是农田编号 (1<=Wi<=1e5) 建立传送门的消耗是 Pij,i、j 是农田编号 (1<= Pij <=1e5, Pij = Pji, Pii =0) 东东为
2020-07-09 21:43:11
155
原创 戴好口罩! Week6作业B题
题目: 新型冠状病毒肺炎(Corona Virus Disease 2019,COVID-19),简称“新冠肺炎”,是指2019新型冠状病毒感染导致的肺炎。 如果一个感染者走入一个群体,那么这个群体需要被隔离! 小A同学被确诊为新冠感染,并且没有戴口罩!!!!!! 危!!! 时间紧迫!!!! 需要尽快找到所有和小A同学直接或者间接接触过的同学,将他们隔离,防止更大范围的扩散。 众所周知,学生的交际可能是分小团体的,一位学生可能同时参与多个小团体内。 请你编写程序解决!戴口罩!! 输入: 多组数据,对于每组测
2020-07-09 11:45:15
212
原创 氪金带东 Week6作业A题
题目: 实验室里原先有一台电脑(编号为1),最近氪金带师咕咕东又为实验室购置了N-1台电脑,编号为2到N。每台电脑都用网线连接到一台先前安装的电脑上。但是咕咕东担心网速太慢,他希望知道第i台电脑到其他电脑的最大网线长度,但是可怜的咕咕东在不久前刚刚遭受了宇宙射线的降智打击,请你帮帮他。 提示: 样例输入对应这个图,从这个图中你可以看出,距离1号电脑最远的电脑是4号电脑,他们之间的距离是3。 4号电脑与5号电脑都是距离2号电脑最远的点,故其答案是2。5号电脑距离3号电脑最远,故对于3号电脑来说它的答案是3。
2020-07-09 11:34:35
179
原创 滑动窗口 Week5作业D题
题目: ZJM 有一个长度为 n 的数列和一个大小为 k 的窗口, 窗口可以在数列上来回移动. 现在 ZJM 想知道在窗口从左往右滑的时候,每次窗口内数的最大值和最小值分别是多少. 例如: 数列是 [1 3 -1 -3 5 3 6 7], 其中 k 等于 3. 输入: 输入有两行。第一行两个整数n和k分别表示数列的长度和滑动窗口的大小,1<=k<=n<=1000000。第二行有n个整数表示ZJM的数列。 输出: 输出有两行。第一行输出滑动窗口在从左到右的每个位置时,滑动窗口中的最小值。第
2020-07-09 11:24:48
275
原创 平衡字符串 Week5作业C题
题目: 一个长度为 n 的字符串 s,其中仅包含 ‘Q’, ‘W’, ‘E’, ‘R’ 四种字符。 如果四种字符在字符串中出现次数均为 n/4,则其为一个平衡字符串。 现可以将 s 中连续的一段子串替换成相同长度的只包含那四个字符的任意字符串,使其变为一个平衡字符串,问替换子串的最小长度? 如果 s 已经平衡则输出0。 输入: 一行字符表示给定的字符串s 输出: 一个整数表示答案 样例: Input: QWER Output: 0 Input: QQWE Output: 1 Input: QQQW
2020-07-09 11:14:18
185
原创 TT‘s Magic Cat Week5作业B题
题目: Thanks to everyone’s help last week, TT finally got a cute cat. But what TT didn’t expect is that this is a magic cat. One day, the magic cat decided to investigate TT’s ability by giving a problem to him. That is select n cities from the world map, an
2020-07-09 11:02:57
161
原创 最大矩形 Week5作业A题
题目: 给一个直方图,求直方图中的最大矩形的面积。例如,下面这个图片中直方图的高度从左到右分别是2, 1, 4, 5, 1, 3, 3, 他们的宽都是1,其中最大的矩形是阴影部分。 输入: 输入包含多组数据。每组数据用一个整数n来表示直方图中小矩形的个数,你可以假定1 <= n <= 100000. 然后接下来n个整数h1, …, hn, 满足 0 <= hi <= 1000000000. 这些数字表示直方图中从左到右每个小矩形的高度,每个小矩形的宽度为1。 测试数据以0结尾。 输
2020-07-09 10:55:01
169
原创 TT的神秘礼物 Week4作业C题
题目: 给定一个 N 个数的数组 cat[i],并用这个数组生成一个新数组 ans[i]。新数组定义为对于任意的 i, j 且 i != j,均有 ans[] = abs(cat[i] - cat[j]),1 <= i < j <= N。试求出这个新数组的中位数,中位数即为排序之后 (len+1)/2 位置对应的数字,’/’ 为下取整。 输入: 多组输入,每次输入一个 N,表示有...
2020-03-23 02:58:09
199
原创 四个数列 Week4作业B题
题目: ZJM 有四个数列 A,B,C,D,每个数列都有 n 个数字。ZJM 从每个数列中各取出一个数,他想知道有多少种方案使得 4 个数的和为 0。 当一个数列中有多个相同的数字的时候,把它们当做不同的数对待。 输入: 第一行:n(代表数列中数字的个数) (1≤n≤4000) 接下来的 n 行中,第 i 行有四个数字,分别表示数列 A,B,C,D 中的第 i 个数字(数字不超过 2 的 28 次...
2020-03-23 02:40:30
216
原创 DDL的恐惧 Week4作业A题
题目: ZJM 有 n 个作业,每个作业都有自己的 DDL,如果 ZJM 没有在 DDL 前做完这个作业,那么老师会扣掉这个作业的全部平时分。 所以 ZJM 想知道如何安排做作业的顺序,才能尽可能少扣一点分。 输入: 输入包含T个测试用例。输入的第一行是单个整数T,为测试用例的数量。 每个测试用例以一个正整数N开头(1<=N<=1000),表示作业的数量。 然后两行。第一行包含N个整数...
2020-03-23 02:19:28
452
原创 可怕的宇宙射线 Week4 CSPM1 C题
题目: 众所周知,瑞神已经达到了CS本科生的天花板,但殊不知天外有天,人外有苟。在浩瀚的宇宙中,存在着一种叫做苟狗的生物,这种生物天生就能达到人类研究生的知识水平,并且天生擅长CSP,甚至有全国第一的水平!但最可怕的是,它可以发出宇宙射线!宇宙射线可以摧毁人的智商,进行降智打击! 宇宙射线会在无限的二维平面上传播(可以看做一个二维网格图),初始方向默认向上。宇宙射线会在发射出一段距离后分裂,向该方...
2020-03-23 01:11:02
183
原创 咕咕东想吃饭 Week4 CSPM1 B题
题目: 咕咕东考试周开始了,考试周一共有n天。他不想考试周这么累,于是打算每天都吃顿好的。他决定每天都吃生煎,咕咕东每天需要买a_i个生煎。但是生煎店为了刺激消费,只有两种购买方式:①在某一天一次性买两个生煎。②今天买一个生煎,同时为明天买一个生煎,店家会给一个券,第二天用券来拿。没有其余的购买方式,这两种购买方式可以用无数次,但是咕咕东是个节俭的好孩子,他训练结束就走了,不允许训练结束时手里有券...
2020-03-22 23:59:05
139
原创 咕咕东的奇遇 Week4 CSPM1 A题
题目: 咕咕东是个贪玩的孩子,有一天,他从上古遗迹中得到了一个神奇的圆环。这个圆环由字母表组成首尾相接的环,环上有一个指针,最初指向字母a。咕咕东每次可以顺时针或者逆时针旋转一格。例如,a顺时针旋转到z,逆时针旋转到b。咕咕东手里有一个字符串,但是他太笨了,所以他来请求你的帮助,问最少需要转多少次。 输入: 输入只有一行,是一个字符串。 输出: 输出最少要转的次数。 样例: Input: zeus...
2020-03-22 23:14:45
151
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅