自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 图片

2020-11-15 20:02:40 102

原创 Week9 作业

A - 咕咕东的目录管理器咕咕东的雪梨电脑的操作系统在上个月受到宇宙射线的影响,时不时发生故障,他受不了了,想要写一个高效易用零bug的操作系统 —— 这工程量太大了,所以他定了一个小目标,从实现一个目录管理器开始。前些日子,东东的电脑终于因为过度收到宇宙射线的影响而宕机,无法写代码。他的好友TT正忙着在B站看猫片,另一位好友瑞神正忙着打守望先锋。现在只有你能帮助东东!初始时,咕咕东的硬盘是空的,命令行的当前目录为根目录 root。目录管理器可以理解为要维护一棵有根树结构,每个目录的儿子必须保持字典序

2020-06-12 08:57:49 166

原创 csp201809-3元素选择器

元素选择器Examples题目分析首先设计解题框架最终要实现的就是元素选择器功能,即给出一个选择器,然后找到对应位置。定义了两个数据结构,一个是元素树-按元素的包含关系及先后关系组织成一棵树,另一个是选择器,组织成包含选择的值以及选项的数组。将查询要求存储在数组中,每次完成一个查询任务,如div div p,则先查询div,再在子结点中查询div,最后查询p根据提示设计了两种查找函数,一种用于从上到下,贪心的查找符合要求的高层元素,另一种用于从子树中找到所有满足要求的节点完整代码#i

2020-06-11 16:15:31 152

原创 csp20160903-炉石传说

炉石传说Examples题目分析其实这道题并不复杂设置两个角色结构体数组,分别表示玩家1与玩家二的随从(包括英雄)设置两个函数summon和attackvoid summon(int p,int a,int h) { role.attack = a; role.health = h; copy(f[turn] + p, f[turn] + tot[turn] + 1, f[turn] + p + 1); f[turn][p] = role; tot[turn]++;}voi

2020-06-11 12:56:01 169

原创 csp201604-3路径解析

路径解析Examples题目分析这是一道t3,所以要设计好解题框架首先是路径采用字符串数组来描述首先将输入的当前目录进行存储,然后对输入的路径进行正规化操作void tran(const string& s){ if (s.empty()||s.at(0)==' ')//判断是否为空 { for (int i = 0; i < cur_dir.size(); i++) ori_dir.push_back(cur_dir[i]); } else if

2020-06-11 12:45:42 234

原创 Week16 M4

宇宙狗的危机Examples题目分析总体上采用区间dp的思想,在计算过程中发现需要附加信息以完成计算,在搜索根节点的信息很重要中所以额外存储了根节点的信息定义dp[i][j]表示i-j是否能形成一颗满足要求的树,l[i][j]表示i-j形成的子树种i节点可以作为根节点,r[i][j]表示i-j形成的子树j节点可以作为根节点状态转移方程if dp[i+1][j]:for k from i to j-1: 如果能i+1-k能形成一棵以k为根的树,k-j可以形成一棵以k为根的子树树且gc

2020-06-11 12:32:29 112

原创 Week12 M3

T1 瑞神的序列Examples完整代码#include<iostream>using namespace std;int n, last, now;int num = 1;int main(){ cin >> n; cin >> last; n--; while (n--) { cin >> now; if (now != last) num++; last = now; } cout << n

2020-06-11 11:57:27 124

原创 Week14限时大模拟

A - 猫睡觉问题Examples题目解析这是一道T3题,整体来看要设置整体代码框架首先对输入时间进行处理,定义结构体fragment来将hh:mm转化为分钟,当出现跨夜番时,将时间段进行拆分,拆成两部分。接着开始判断是否能够完成任务。//是否能连接就是判断时间段之间的间隔是否足够大if first fragment can link to last fragment: for i from end to 0: if fragment[i].r+1 到 fragment[i+1]

2020-06-11 11:20:09 194

原创 Week15 选做部分

B - ZJM 与生日礼物(选做)Sample Input0110001000009011001000009Sample OutputSet 1 is immediately decodableSet 2 is not immediately decodable题目分析采用字典树的方式来解决字符串匹配问题再插入过程中判断是否可以匹配(1)最后一个字符落到已存在的节点(2)经过其他字符串的尾部完整代码#include<iostream>

2020-06-11 10:36:35 179

原创 Week12 选做部分

D - 选做题 - 1We 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,andif a and b are regular bra

2020-06-11 10:11:21 97

原创 Week 11选做部分

E - 选做题11-1 东东与 ATM Examples

2020-06-11 09:55:01 94

原创 Week10 限时大练习

东东转魔方东东有一个二阶魔方,即2×2×2的一个立方体组。立方体由八个角组成。魔方的每一块都用三维坐标(h, k, l)标记,其中h, k, l∈{0,1}。六个面的每一个都有四个小面,每个小面都有一个正整数。对于每一步,东东可以选择一个特定的面,并把此面顺时针或逆时针转90度。请你判断,是否东东可以在一个步骤还原这个魔方(每个面没有异色)。Input输入的第一行包含一个整数N(N≤30),这是测试用例的数量。对于每个测试用例, 第 1~4 个数描述魔方的顶面,这是常见的2×2面,由(0

2020-06-11 09:29:01 105

原创 程序设计思维与实践 Week10 线性dp

题目一个长度为 n 的字符串 s,其中仅包含 ‘Q’, ‘W’, ‘E’, ‘R’ 四种字符。如果四种字符在字符串中出现次数均为 n/4,则其为一个平衡字符串。现可以将 s 中连续的一段子串替换成相同长度的只包含那四个字符的任意字符串,使其变为一个平衡字符串,问替换子串的最小长度?如果 s 已经平衡则输出0。...

2020-06-11 09:03:56 116

原创 程序设计思维与实践 Week5 作业B TT's magic cats

题目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 ...

2020-04-03 09:47:41 115

原创 程序设计思维与实践 Week5 作业A 最大矩形

题目给一个直方图,求直方图中的最大矩形的面积。例如,下面这个图片中直方图的高度从左到右分别是2, 1, 4, 5, 1, 3, 3, 他们的宽都是1,其中最大的矩形是阴影部分。Input输入包含多组数据。每组数据用一个整数n来表示直方图中小矩形的个数,你可以假定1 <= n <= 100000. 然后接下来n个整数h1, …, hn, 满足 0 <= hi <= 10...

2020-04-03 09:23:54 190

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除