实验报告
木头吃日历
努力才可能成功
展开
-
路径解析(csp201604-3)
题意: 在操作系统中,数据通常以文件的形式存储在文件系统中。文件系统一般采用层次化的组织形式,由目录(或者文件夹)和文件构成,形成一棵树的形状。文件有内容,用于存储数据。目录是容器,可包含文件或其他目录。同一个目录下的所有文件和目录的名字各不相同,不同目录下可以有名字相同的文件或目录。 为了指定文件系统中的某个文件,需要用路径来定位。在类 Unix 系统(Linux、Max OS X、FreeBSD等)中,路径由若干部分构成,每个部分是一个目录或者文件的名字,相邻两个部分之间用 / 符号分隔。 有原创 2020-06-14 11:22:11 · 201 阅读 · 0 评论 -
程序设计思维与实践 CSP-M4 (3/4/数据班)
A-TT数鸭子题意:这一天,TT因为疫情在家憋得难受,在云吸猫一小时后,TT决定去附近自家的山头游玩。TT来到一个小湖边,看到了许多在湖边嬉戏的鸭子,TT顿生羡慕。此时他发现每一只鸭子都不一样,或羽毛不同,或性格不同。TT在脑子里开了一个map<鸭子,整数> tong,把鸭子变成了一些数字。现在他好奇,有多少只鸭子映射成的数的数位中不同的数字个数小于k。思路:这道题的数据范围就是一个坑!!!其实k最大也就是10。我郁闷了半天,最后也没提交代码,唉!通过mod 10的方法取得每一位,最原创 2020-06-14 10:42:11 · 224 阅读 · 0 评论 -
201809-3 元素选择器
思路:这题也是一个大模拟题,我们从数据类型,搜索过程,细节处理三个方面进行分析。数据类型结点的结构体,存储了当前行的标签和id,以及父亲节点。struct node{ node(){ key.clear(); id.clear(); parent=0; } string key;//标签选择器 string id;//id选择器 int parent;//父亲};node a[maxn];细节处理使用map存储一个string...原创 2020-06-14 10:20:13 · 156 阅读 · 0 评论 -
炉石传说(csp201609-3)
题意:问题描述\hspace{17pt}《炉石传说:魔兽英雄传》(Hearthstone: Heroes of Warcraft,简称炉石传说)是暴雪娱乐开发的一款集换式卡牌游戏(如下图所示)。游戏在一个战斗棋盘上进行,由两名玩家轮流进行操作,本题所使用的炉石传说游戏的简化规则如下:玩家会控制一些角色,每个角色有自己的生命值和攻击力。当生命值小于等于 0 时,该角色死亡。角色分为英雄和随从。玩家各控制一个英雄,游戏开始时,英雄的生命值为 30,攻击力为 0。当英雄死亡时,游戏结束,英雄未死亡的一方获原创 2020-06-14 09:54:20 · 163 阅读 · 0 评论 -
Week14 猫睡觉问题
题意:众所周知,TT家里有一只魔法喵。这只喵十分嗜睡。一睡就没有白天黑夜。喵喵一天可以睡多次!!每次想睡多久就睡多久╭(╯^╰)╮喵睡觉的时段是连续的,即一旦喵喵开始睡觉了,就不能被打扰,不然喵会咬人哒[○・`Д´・ ○]可以假设喵喵必须要睡眠连续不少于 A 个小时,即一旦喵喵开始睡觉了,至少连续 A 个小时内(即A*60分钟内)不能被打扰!现在你知道喵喵很嗜睡了,它一天的时长都在吃、喝、拉、撒、睡,换句话说要么睡要么醒着滴!众所周知,这只魔法喵很懒,和TT一样懒,它白天不能连续活动超过 B 个小原创 2020-06-14 09:43:51 · 139 阅读 · 0 评论 -
程序设计思维与实践 CSP-M3 (3/4/数据班)
A- 瑞神的序列题意:瑞神的数学一向是最好的,连强大的咕咕东都要拜倒在瑞神的数学水平之下,虽然咕咕东很苦恼,但是咕咕东拿瑞神一点办法都没有。5.1期间大家都出去玩了,只有瑞神还在孜孜不倦的学习,瑞神想到了一个序列,这个序列长度为n,也就是一共有n个数,瑞神给自己出了一个问题:数列有几段?段的定义是位置连续的数值相同的最长整数序列思路:一旦找到不同于前一个的元素,那么段数就+1,非常简单。代码:#include <iostream>using namespace std;int原创 2020-06-14 09:12:33 · 157 阅读 · 0 评论 -
程序设计思维与实践 Week10 作业 (3/4/数据班)
A - 签到题题意:东东在玩游戏“Game23”。在一开始他有一个数字n,他的目标是把它转换成m,在每一步操作中,他可以将n乘以2或乘以3,他可以进行任意次操作。输出将n转换成m的操作次数,如果转换不了输出-1。思路:这题就是一个纯签到题,如果m不能整除n,直接输出-1,之后如果m能被2整除,就除以2,能被3整除,就除以3,如果最终能除尽,输出即可。代码:#include<iostream>using namespace std;int main(){ int n,m原创 2020-06-14 08:52:08 · 169 阅读 · 0 评论 -
程序设计思维与实践 Week10 限时大模拟 (3/4/数据班)
A - 签到题题意:东东有一个字符串X,该串包含偶数个字符,一半是 S 字符,一半是 T 字符东东可以对该字符串执行 1010000 次操作:如果存在 ST 是该串的子串,则删除掉最左边的 ST。即 TSTTSS⇒TTSS、SSSTTT⇒SSTT⇒ST⇒空思路:题意就是不断删除这个那个字符串中的ST,仔细想想我们会发现,这道题其实很简单,记最终结果为sum,其中S的个数为lcnt,每当我们发现一个S,那么直接lcnt++;但是如果当前字符是T,anst++,并且如果lcnt!=0的话,说明前面一原创 2020-06-14 08:38:00 · 140 阅读 · 0 评论 -
程序设计思维与实践 Week9 作业 (3/4/数据班)
A-咕咕东的目录管理器题意:咕咕东的雪梨电脑的操作系统在上个月受到宇宙射线的影响,时不时发生故障,他受不了了,想要写一个高效易用零bug的操作系统 —— 这工程量太大了,所以他定了一个小目标,从实现一个目录管理器开始。前些日子,东东的电脑终于因为过度收到宇宙射线的影响而宕机,无法写代码。他的好友TT正忙着在B站看猫片,另一位好友瑞神正忙着打守望先锋。现在只有你能帮助东东!初始时,咕咕东的硬盘是空的,命令行的当前目录为根目录 root。目录管理器可以理解为要维护一棵有根树结构,每个目录的儿子必须保持字原创 2020-06-14 08:28:17 · 185 阅读 · 0 评论 -
程序设计思维与实践 Week8 作业 (3/4/数据班)
A - 区间选点 II题意:给定一个数轴上的 n 个区间,要求在数轴上选取最少的点使得第 i 个区间 [ai, bi] 里至少有 ci 个点思路:使用差分约束,构造不等式组,核心如下:用sum[i]表示数轴上[0,i]之间的选点的个数。对于第i个区间,sum[bi]-sum[ai-1]>=ci0<=sum[i]-sum[i-1]<=1可以把不等式组转成图跑最长路...原创 2020-04-17 12:05:13 · 145 阅读 · 0 评论 -
程序设计思维与实践 CSP-M2 (3/4/数据班)
HRZ的序列题意:相较于咕咕东,瑞神是个起早贪黑的好孩子,今天早上瑞神起得很早,刷B站时看到了一个序列a,他对这个序列产生了浓厚的兴趣。他好奇是否存在一个数K,使得一些数加上K,一些数减去K,一些数不变,使得整个序列中所有的数相等。其中对于序列中的每个位置上的数字,至多只能执行一次加运算或减运算或是对该位置不进行任何操作。由于瑞神只会刷B站,所以他把这个问题交给了你!思路:使用三个数...原创 2020-04-17 11:50:35 · 152 阅读 · 0 评论 -
程序设计思维与实践 Week7 作业 (3/4/数据班)
A - TT 的魔法猫题意:众所周知,TT 有一只魔法猫。这一天,TT 正在专心致志地玩《猫和老鼠》游戏,然而比赛还没开始,聪明的魔法猫便告诉了 TT 比赛的最终结果。TT 非常诧异,不仅诧异于他的小猫咪居然会说话,更诧异于这可爱的小不点为何有如此魔力?魔法猫告诉 TT,它其实拥有一张游戏胜负表,上面有 N 个人以及 M 个胜负关系,每个胜负关系为 A B,表示 A 能胜过 B,且胜负关系...原创 2020-04-17 11:32:23 · 186 阅读 · 0 评论 -
程序设计思维与实践 Week6 作业
A - 氪金带东题意:实验室里原先有一台电脑(编号为1),最近氪金带师咕咕东又为实验室购置了N-1台电脑,编号为2到N。每台电脑都用网线连接到一台先前安装的电脑上。但是咕咕东担心网速太慢,他希望知道第i台电脑到其他电脑的最大网线长度,但是可怜的咕咕东在不久前刚刚遭受了宇宙射线的降智打击,请你帮帮他。思路:该题是一个树结构,我们需要找到每一个点到其他点的最大距离。可以证明的是,树上一个点距离...原创 2020-04-03 10:13:03 · 139 阅读 · 0 评论 -
程序设计思维与实践 Week6 限时大模拟
A - 掌握魔法の东东 II题意:从瑞神家打牌回来后,东东痛定思痛,决定苦练牌技,终成赌神!东东有 A × B 张扑克牌。每张扑克牌有一个大小(整数,记为a,范围区间是 0 到 A - 1)和一个花色(整数,记为b,范围区间是 0 到 B - 1。扑克牌是互异的,也就是独一无二的,也就是说没有两张牌大小和花色都相同。“一手牌”的意思是你手里有5张不同的牌,这 5 张牌没有谁在前谁在后的顺...原创 2020-04-03 09:37:44 · 124 阅读 · 0 评论 -
程序设计思维与实践 Week5 作业
A - 最大矩形题意:给一个直方图,求直方图中的最大矩形的面积。思路:要求最大矩形的面积,关键是对于每一个小的矩形,都要找到左右两端比他矮的所有矩形,这样能够求出每一个矩形高在直方图中最大矩形面积,之后再对这些矩形面积进行比较,选出最大矩形即可。所以现在关键在于如何对于每一个节点,向右找到第一个比他小的节点,向左找到第一个比他小的节点。单调栈就是为这个而生的。首先将栈中a[0]和a[n...原创 2020-04-03 09:27:31 · 119 阅读 · 0 评论 -
画图(csp2015 12-3)
题意:问题描述\hspace{17pt}用 ASCII 字符来画图是一件有趣的事情,并形成了一门被称为 ASCII Art 的艺术。例如,下图是用 ASCII 字符画出来的 CSPRO 字样。 ..____.____..____..____...___.. ./.___/.___||.._.\|.._.\./._.\. |.|...\___.\|.|_).|.|_).|.|.|.|...原创 2020-04-03 09:05:02 · 125 阅读 · 0 评论 -
程序设计思维与实践 CSP-M1
A-字符串题意:一个圆环。这个圆环由字母表组成首尾相接的环,环上有一个指针,最初指向字母a。咕咕东每次可以顺时针或者逆时针旋转一格。例如,a顺时针旋转到z,逆时针旋转到b。有一个字符串,问最少需要转多少次才能得到该字符串。思路:这个题是一个过程模拟题,按照题目要求,求出当前指针指向的字母与所需字母之间的最短距离。然后求和即可。具体方法为利用ASCII码作为字母之间衡量距离的标准。选取(字母...原创 2020-03-20 10:46:26 · 182 阅读 · 0 评论 -
程序设计思维与实践 Week3 作业
A-选数问题题意:n个数中选K个数,其和等于S的方案有多少个?思路:该题是典型的子集枚举问题,但需要对过程进行剪枝。当选数个数大于k或者总和大于s时,就不需要继续进行。枚举过程采用dfs方法。总结:采用dfs方法进行搜索,并在过程中合理的剪枝,顺利解决问题。代码:#include <iostream>#include <vector>using std:...原创 2020-03-20 09:41:04 · 85 阅读 · 0 评论 -
程序设计思维与实践 Week2 作业
A - Maze题意:根据一张5×5的地图,起点为左上角,终点为右下角,输出最短路径。数据保证有唯一解。思路:这题是典型的迷宫问题。使用结构体数组记录每个点,利用bfs广度优先搜索,pre二维数组记录该点之前的点。最后使用递归思想寻找出路径。总结:结构体数组+bfs+路径记录,顺利解决问题。代码:#include <cstdio>#include <cmath&...原创 2020-03-03 14:09:28 · 182 阅读 · 0 评论 -
程序设计思维与实践 Week2 实验
A-化学题意:根据不同的烷烃基,通过5行a,b描述一个烷烃基。根据输入的烷烃基原子编号,甄别烷烃基的类别。组数T(1≤T≤200000),序号a,b(1≤a,b≤6,a ≤b)。数据保证输入的烷烃基是以上5种之一。思路:筛选不同的烷烃基,首先就需要理清不同的烷烃基之间的区别。简单分析后,发现不同烷烃基原子的度是不同的。因此可以采用图论的方法进行分析。n-hexane每个原子的度都小于等...原创 2020-03-03 09:47:39 · 214 阅读 · 0 评论