程序设计
程序设计、算法、CSP考试
anqiqi疯狂暴走兔
没事就爱不开心
展开
-
程序设计——第13周作业限时训练
东东对数字很敏感,他定义了一个数的数根,数根即把一个数的各个位上的数字加起来可以得到。如果得到的数是一位数,那么这个数就是数根。如果结果是两位数或者包括更多位的数字,那么再把这些数字加起来。如此进行下去,直到得到是一位数为止。比如,对于 242424 来说,把 222 和 444 相加得到 666,由于 666 是一位数,因此 666 是 242424 的数根。再比如 393939,把 333 和 999 加起来得到 121212,由于 121212 不是一位数,因此还得把 111 和 222 加起来,最原创 2020-10-03 19:52:32 · 72 阅读 · 0 评论 -
CSP练习1:201912-3化学方程式
#include<bits/stdc++.h>using namespace std;vector<string> st;vector<int> coefs;//总系数 unordered_map<string,int> mp,ansl,ansr;int top=-1;int trans(string num){ int rat=1,ans=0; for(int i=num.size()-1;i>=0;i--){ ans+=(nu原创 2020-07-08 20:17:47 · 164 阅读 · 0 评论 -
程序设计——第4月CSP模拟考试(判断是否能构成二叉搜索树)
TT数鸭子&ZJM要抵御宇宙射线这两道题目比较简单,只需要注意如下几点:(1)鸭子映射成的数字数位中不同的数字个数最大为10,即这个数字中出现了0、1、2、3、4、5、6、7、8、9。但是题目描述中,给出的k值范围很令人迷惑,所以要相信自己的理解,坚定自己的想法。(2)给出的时间是5s,而且最多只有1000个点,说明可以暴力枚举。计算出以每个点为圆心算出来的半径,之后选最小值。宇宙狗的危机问题描述思路分析小建议:涉及动态规划的题目都比较难,根据时间把握情况,尝试暴力求解前几个点,原创 2020-06-06 21:36:10 · 148 阅读 · 0 评论 -
CSP练习题4——元素选择器
思路分析对每个元素进行封装,三个成员分别是标签label、属性id、缩进数level。元素的标签、属性和缩进数可以通过字符串处理得到。如果没有属性id就将其置为空。另外,标签名对大小写不敏感所以可以统一将标签名转化为小写方便后期处理。查询过程中,查询内容有可能是一个节点也可能是个路径,首先使用strtok函数将查询内容分割,并且将分割的路径上的各个节点存到vector< string> ask中,同样将标签转化为小写。之后从ask中最后一个元素找起,也就是从最小辈的孩子找起,一层一层...原创 2020-06-03 10:18:25 · 135 阅读 · 0 评论 -
Week15——程序设计作业(哈希字符串)
题目描述ZJM 为了准备霍格沃兹的期末考试,决心背魔咒词典,一举拿下咒语翻译题题库格式:[魔咒] 对应功能背完题库后,ZJM 开始刷题,现共有 N 道题,每道题给出一个字符串,可能是 [魔咒],也可能是对应功能ZJM 需要识别这个题目给出的是 [魔咒] 还是对应功能,并写出转换的结果,如果在魔咒词典里找不到,输出 “what?”Input:首先列出魔咒词典中不超过100000条不同的咒语,每条格式为:[魔咒] 对应功能其中“魔咒”和“对应功能”分别为长度不超过20和80的字符串,字符串中保证不原创 2020-05-31 16:48:42 · 151 阅读 · 0 评论 -
程序设计——week15实验课限时训练(瑞瑞爱上字符串))
瑞瑞爱上字符串题目描述瑞瑞最近迷上了字符串,因此决定出一个字符串的题。给定两个正整数 N、K,考虑所有由 N - 2 个 a 和 2 个 b 组成的字符串,要求输出其中字典序第 K 小的。例如当 N = 5 时,共有如下 10 种组成方式: 1.aaabb 2.aabab 3.aabba 4.abaab 5.ababa 6.abbaa 7.baaab 8.baaba 9.babaa 10.bbaaaInput:多组数原创 2020-05-29 22:14:10 · 140 阅读 · 0 评论 -
程序设计——第14周限时大模拟(安排时间看番)
题目描述众所周知,TT家里有一只魔法喵。这只喵十分嗜睡。一睡就没有白天黑夜。喵喵一天可以睡多次!!每次想睡多久就睡多久╭(╯^╰)╮喵睡觉的时段是连续的,即一旦喵喵开始睡觉了,就不能被打扰,不然喵会咬人哒[○・`Д´・ ○]可以假设喵喵必须要睡眠连续不少于 A 个小时,即一旦喵喵开始睡觉了,至少连续 A 个小时内(即A*60分钟内)不能被打扰!现在你知道喵喵很嗜睡了,它一天的时长都在吃、喝、拉、撒、睡,换句话说要么睡要么醒着滴!众所周知,这只魔法喵很懒,和TT一样懒,它不能连续活动超过 B 个小时原创 2020-05-25 14:03:09 · 126 阅读 · 0 评论 -
程序设计——week14作业(石头剪刀布、染十字叉、矩阵快速幂)
A石头剪子布题目描述每一个大人曾经都是一个小孩,Q老师 也一样。 为了回忆童年,Q老师 和 Monika 玩起了石头剪刀布的游戏,游戏一共 n 轮。无所不知的 Q老师 知道每一轮 Monika 的出招,然而作为限制, Q老师 在这 n 轮游戏中必须恰好出 a 次石头,b 次布和 c 次剪刀。如果 Q老师 赢了 Monika n/2(上取整) 次,那么 Q老师就赢得了这场游戏,否则 Q老师 就输啦!Q老师非常想赢,他想知道能否可以赢得这场游戏,如果可以的话,Q老师希望你能告诉他一种可以赢的出招顺序,任原创 2020-05-25 09:30:32 · 145 阅读 · 0 评论 -
程序设计——第13周作业(神秘人、神秘人plus、接猫咪)
A.神秘人题目描述这一天,TT 遇到了一个神秘人。神秘人给了两个数字,分别表示 n 和 k,并要求 TT 给出 k 个奇偶性相同的正整数,使得其和等于 n。例如 n = 10,k = 3,答案可以为 [4 2 4]。TT 觉得这个任务太简单了,不愿意做,你能帮他完成吗?本题是SPJInput:第一行一个整数 T,表示数据组数,不超过 1000。之后 T 行,每一行给出两个正整数,分别表示 n(1 ≤ n ≤ 1e9)、k(1 ≤ k ≤ 100)。Output:如果存在这样 k 个数字原创 2020-05-16 17:54:21 · 132 阅读 · 0 评论 -
程序设计——week13限时训练
本次题目都很简单,只是简单记一下我翻车的题目题目描述在另一个位面,世界末日发生了。东东作为诺亚方舟的船长,他现在从月球开始启动诺亚方舟去其他星球营救民众。东东从若干星球将人运回大本营,星球的数目以及每个星球的坐标和人数都将由输入决定,东东忙着开船,需要你帮忙求出所有人都到达月球并登陆所用的时间。在直角坐标系的原点是月球,诺亚方舟每次从大本营出发,救了人之后将人送回月球。坐标系中的点代表某个星球。每个屋顶由其位置坐标和其上的人数表示。诺亚方舟每次从大本营出发,以速度 505050 km/s驶向下一个星球原创 2020-05-16 11:03:37 · 125 阅读 · 0 评论 -
程序设计——第十二周作业(三维空间找路径、东东扫宿舍、括号匹配)
A必做题#include<bits/stdc++.h>#define MAX_SIZE 1000000using namespace std;int n,a[MAX_SIZE],cnt[MAX_SIZE];int main(){ while(~scanf("%d",&n)){ memset(cnt,0,sizeof(cnt)); for(int i=0;i<n;i++) scanf("%d",&a[i]); for(int i=0;i<n原创 2020-05-14 12:17:41 · 188 阅读 · 0 评论 -
程序设计——第3月模拟考试(序列分段、消棋子、delicious子串)
T1 瑞神的序列题目描述瑞神的数学一向是最好的,连强大的咕咕东都要拜倒在瑞神的数学水平之下,虽然咕咕东很苦 恼,但是咕咕东拿瑞神一点办法都没有。 5.1期间大家都出去玩了,只有瑞神还在孜孜不倦的学习,瑞神想到了一个序列,这个序列长度为 ,也就是一共有 个数,瑞神给自己出了一个问题:数列有几段? 段的定义是连续的相同的最长整数序列 输入描述 输入第一行一个整数n,表示数的个数 接下来一行n个空格隔开的整数,表示不同的数字 输出描述 输出一行,这个序列有多少段。样例输入:122 3 3 6 6 6 1原创 2020-05-09 10:05:24 · 123 阅读 · 0 评论 -
CSP2练习题3——炉石传说
炉石传说问题描述《炉石传说:魔兽英雄传》(Hearthstone: Heroes of Warcraft,简称炉石传说)是暴雪娱乐开发的一款集换式卡牌游戏(如下图所示)。游戏在一个战斗棋盘上进行,由两名玩家轮流进行操作,本题所使用的炉石传说游戏的简化规则如下:玩家会控制一些角色,每个角色有自己的生命值和攻击力。当生命值小于等于 0 时,该角色死亡。角色分为英雄和随从。 * 玩家各控制...原创 2020-05-05 15:00:35 · 239 阅读 · 0 评论 -
程序设计——第十一周(必做题:1~6、多重背包:ATM、0-1背包:选CD)
这次题目分为前6道必做题和后两道选做题,A~D是必做题都很简单,就只是简略呈现,主要记录一下后两道题A.蒜头君买房蒜头君从现在开始工作,年薪 N 万。他希望在蒜厂附近买一套 60 平米的房子,现在价格是 200 万。假设房子价格以每年百分之 KKK 增长,并且蒜头君未来年薪不变,且不吃不喝,不用交税,每年所得 N 万全都积攒起来,问第几年能够买下这套房子?(第一年年薪 NNN 万,房价 200...原创 2020-04-30 21:55:35 · 266 阅读 · 0 评论 -
程序设计——第十周限时训练(团队聚会)
团队聚会题目描述TA团队每周都会有很多任务,有的可以单独完成,有的则需要所有人聚到一起,开过会之后才能去做。但TA团队的每个成员都有各自的事情,找到所有人都有空的时间段并不是一件容易的事情。给出每位助教的各项事情的时间表,你的任务是找出所有可以用来开会的时间段。输入格式:第一行一个数T(T≤100),表示数据组数。对于每组数据,第一行一个数m(2 ≤ m ≤ 20),表示TA的数量。...原创 2020-04-29 23:06:38 · 142 阅读 · 0 评论 -
程序设计——第十周(动态规划:x2和x3操作次、LIS_LCS、拿数问题数)
A.x2和x3操作次数题目描述东东在玩游戏“Game23”。在一开始他有一个数字n,他的目标是把它转换成m,在每一步操作中,他可以将n乘以2或乘以3,他可以进行任意次操作。输出将n转换成m的操作次数,如果转换不了输出-1。Input:输入的唯一一行包括两个整数n和m(1<=n<=m<=5*10^8).output:输出从n转换到m的操作次数,否则输出-1.Simp...原创 2020-04-25 10:18:08 · 329 阅读 · 0 评论 -
程序设计——第九周(复杂模拟题的普适性方法:目录管理、一手牌、选长椅))
A.目录管理题目描述咕咕东的雪梨电脑的操作系统在上个月受到宇宙射线的影响,时不时发生故障,他受不了了,想要写一个高效易用零bug的操作系统 —— 这工程量太大了,所以他定了一个小目标,从实现一个目录管理器开始。前些日子,东东的电脑终于因为过度收到宇宙射线的影响而宕机,无法写代码。他的好友TT正忙着在B站看猫片,另一位好友瑞神正忙着打守望先锋。现在只有你能帮助东东!初始时,咕咕东的硬盘是空的,命...原创 2020-04-20 22:31:38 · 213 阅读 · 0 评论 -
程序设计——第八周(差分约束:选数问题;拓扑排序:求比赛名次;scc:选班长)
A.差分选数题目描述给定一个数轴上的 n 个区间,要求在数轴上选取最少的点使得第 i 个区间 [ai, bi] 里至少有 ci 个点使用差分约束系统的解法解决这道题使用差分约束系统的解法解决这道题使用差分约束系统的解法解决这道题使用差分约束系统的解法解决这道题使用差分约束系统的解法解决这道题Input:输入第一行一个整数 n 表示区间的个数,接下来的 n 行,每一行两个用空格隔开...原创 2020-04-15 22:39:27 · 192 阅读 · 0 评论 -
程序设计——第二月CSP模拟考试(HRZ的序列,HRZ学英语,二分:咕咕东的奇妙序列)
HRZ的序列题目描述思路分析那道题目首先看一下测试数据的范围,选择合适数据类型,这道题目选择long long类型。typedef long long ll。序列中每个数字经过加或者减去k或者不做处理之后每个数字都相等,这个数字k是一旦确定,对于序列中每个数字的加减来说,加数/减数都是这个k,所以不妨使用sort将序列升序排序,根绝最小的数字和最大的数字确定出这个k可以是哪些值,然后对这...原创 2020-04-13 12:03:41 · 115 阅读 · 0 评论 -
CSP练习题2(栈:路径解析)
路径解析问题描述在操作系统中,数据通常以文件的形式存储在文件系统中。文件系统一般采用层次化的组织形式,由目录(或者文件夹)和文件构成,形成一棵树的形状。文件有内容,用于存储数据。目录是容器,可包含文件或其他目录。同一个目录下的所有文件和目录的名字各不相同,不同目录下可以有名字相同的文件或目录。 为了指定文件系统中的某个文件,需要用路径来定位。在类 Unix 系统(Linux、Max OS ...原创 2020-04-11 11:48:18 · 236 阅读 · 0 评论 -
程序设计——第七周作业(Floyd:胜负未知场数;dijkstra:猫猫快线最快线路;SPFA:城市收税)
A-胜负未知场数题目描述众所周知,TT 有一只魔法猫。 这一天,TT 正在专心致志地玩《猫和老鼠》游戏,然而比赛还没开始,聪明的魔法猫便告诉了 TT 比赛的最终结果。TT 非常诧异,不仅诧异于他的小猫咪居然会说话,更诧异于这可爱的小不点为何有如此魔力?魔法猫告诉 TT,它其实拥有一张游戏胜负表,上面有 N 个人以及 M 个胜负关系,每个胜负关系为 A B,表示 A 能胜过 B,且胜负关系具有传...原创 2020-04-05 16:36:46 · 524 阅读 · 0 评论 -
程序设计——第六周作业(dfs:电脑间最长距离,并查集:被隔离的人数、灌溉农田、最小生成树的最大权)
A.电脑间的最长距离题目描述:实验室里原先有一台电脑(编号为1),最近氪金带师咕咕东又为实验室购置了N-1台电脑,编号为2到N。每台电脑都用网线连接到一台先前安装的电脑上。但是咕咕东担心网速太慢,他希望知道第i台电脑到其他电脑的最大网线长度,但是可怜的咕咕东在不久前刚刚遭受了宇宙射线的降智打击,请你帮帮他。提示: 样例输入对应这个图,从这个图中你可以看出,距离1号电脑最远的电脑是4号电脑,...原创 2020-03-29 15:08:23 · 188 阅读 · 0 评论 -
程序设计——第六周限时训练(暴力穷举:一手牌问题)
A-一手牌的牌型可能性题目描述:从瑞神家打牌回来后,东东痛定思痛,决定苦练牌技,终成赌神!东东有 A × B 张扑克牌。每张扑克牌有一个大小(整数,记为a,范围区间是 0 到 A - 1)和一个花色(整数,记为b,范围区间是 0 到 B - 1。扑克牌是互异的,也就是独一无二的,也就是说没有两张牌大小和花色都相同。“一手牌”的意思是你手里有5张不同的牌,这 5 张牌没有谁在前谁在后的顺序...原创 2020-03-28 20:32:57 · 266 阅读 · 0 评论 -
CSP练习题1(BFS:ASCII画图)
画图题目描述:用 ASCII 字符来画图是一件有趣的事情,并形成了一门被称为 ASCII Art 的艺术。例如,下图是用 ASCII 字符画出来的 CSPRO 字样。 ..____.____..____..____...___.. ./.___/.___||.._.\|.._.\./._.\. |.|...\___.\|.|_).|.|_).|.|.|.| |.|___.__...原创 2020-03-24 21:23:00 · 323 阅读 · 0 评论 -
程序设计——第五周作业(单增栈:最大矩形,差分:魔法猫,尺取:平衡字符串,单调队列:滑动窗口)
A:最大矩形题目描述:给一个直方图,求直方图中的最大矩形的面积。例如,下面这个图片中直方图的高度从左到右分别是2, 1, 4, 5, 1, 3, 3, 他们的宽都是1,其中最大的矩形是阴影部分。Input:输入包含多组数据。每组数据用一个整数n来表示直方图中小矩形的个数,你可以假定1 <= n <= 100000. 然后接下来n个整数h1, …, hn, 满足 0 <=...原创 2020-03-23 12:19:16 · 169 阅读 · 0 评论 -
程序设计——第一月CSP模拟(上古圆环,买生煎,宇宙射线)
A.咕咕东的奇遇题目描述:咕咕东是个贪玩的孩子,有一天,他从上古遗迹中得到了一个神奇的圆环。这个圆环由字母表组成首尾相接的环,环上有一个指针,最初指向字母a。咕咕东每次可以顺时针或者逆时针旋转一格。例如,a顺时针旋转到z,逆时针旋转到b。咕咕东手里有一个字符串,但是他太笨了,所以他来请求你的帮助,问最少需要转多少次。输入格式:输入只有一行,是一个字符串。输出格式:输出最少要转的次数。...原创 2020-03-16 17:28:15 · 166 阅读 · 0 评论 -
程序设计思维与设计——第四周作业(贪心:DDL多拿分;二分查找:选数使和为0、TT的神秘礼物)
A-DDL的恐惧题目内容:ZJM 有 n 个作业,每个作业都有自己的 DDL,如果 ZJM 没有在 DDL 前做完这个作业,那么老师会扣掉这个作业的全部平时分。所以 ZJM 想知道如何安排做作业的顺序,才能尽可能少扣一点分。 请你帮帮他吧!Input:输入包含T个测试用例。输入的第一行是单个整数T,为测试用例的数量。每个测试用例以一个正整数N开头(1<=N<=1000),表示作...原创 2020-03-14 20:53:42 · 158 阅读 · 0 评论 -
程序设计思维与设计——第三周作业(贪心:选数、区间选点、区间覆盖)
A-选数问题题目如下:Given n positive numbers, ZJM can select exactly K of them that sums to S. Now ZJM wonders how many ways to get it!Input:The first line, an integer T<=100, indicates the number of te...原创 2020-03-07 21:01:13 · 161 阅读 · 0 评论 -
程序设计思维与实践——第二周作业(迷宫bfs、倒水bfs)
A.Maze题目描述:东东有一张地图,想通过地图找到妹纸。地图显示,0表示可以走,1表示不可以走,左上角是入口,右下角是妹纸,这两个位置保证为0。既然已经知道了地图,那么东东找到妹纸就不难了,请你编一个程序,写出东东找到妹纸的最短路线。Input :输入是一个5 × 5的二维数组,仅由0、1两数字组成,表示法阵地图。Output :输出若干行,表示从左上角到右下角的最短路径依次经过的坐...原创 2020-03-04 11:51:47 · 171 阅读 · 0 评论 -
程序设计思维与实践——第二周实验(烷烃命名、ac罚时排名、打牌排序)
A - 化学 (编译器选 GNU G++)题目如下:化学很神奇,以下是烷烃基。假设如上图,这个烷烃基有6个原子和5个化学键,6个原子分别标号1~6,然后用一对数字 a,b 表示原子a和原子b间有一个化学键。这样通过5行a,b可以描述一个烷烃基。你的任务是甄别烷烃基的类别。原子没有编号方法,比如1 22 33 44 55 6和1 32 32 44 55 6是同一种,本...原创 2020-03-02 22:29:15 · 185 阅读 · 0 评论