03 2019 档案

摘要:题解: 我的解法是用一个类似字典树结构的结构体来表示节点。看到另一种解法是用数组来映射二叉树的,开到14000就过了,但是我觉得是数据水了,因为题中说最多 256个节点,如果256个节点连成链型,除根节点外每个节点都是父节点的右儿子。那么数组要开pow(2, 256)个。可见这种方法是不可行的; 类 阅读全文
posted @ 2019-03-22 11:31 Jathon-cnblogs 阅读(251) 评论(0) 推荐(0)
摘要:这是2017年蓝桥杯C组C++的压轴题,拿到之后没什么想法。但是蓝桥杯有部分分。所以直接敲了个大暴力提交上去过了一半的数据。后来想到了DP,但是没能实现出来,感觉还是有问题的。后来看了解题视频发现是预处理。 大暴力 图形排版 739B C++ 运行超时 50 运行超时 1.585MB #includ 阅读全文
posted @ 2019-03-21 22:48 Jathon-cnblogs 阅读(838) 评论(3) 推荐(0)
摘要:题解: 用优先队列和pair来模拟栈,这个很好想。关键点是开第三个栈,因为可能有多次A栈和B栈的合并,如果转移次数多了会超时。这时候就用到第三个栈了,把所以合并都合并到C栈里去。取的时候,先从A/B栈里取。如果是空栈,就从C栈里取; 思维题+优先队列+栈 Accepted 5818 858MS 21 阅读全文
posted @ 2019-03-17 20:00 Jathon-cnblogs 阅读(200) 评论(0) 推荐(0)
摘要:卡片换位 你玩过华容道的游戏吗?这是个类似的,但更简单的游戏。看下面 3 x 2 的格子 在其中放5张牌,其中A代表关羽,B代表张飞,* 代表士兵。还有一个格子是空着的。 你可以把一张牌移动到相邻的空格中去(对角不算相邻)。游戏的目标是:关羽和张飞交换位置,其它的牌随便在哪里都可以。 输入格式:输入 阅读全文
posted @ 2019-03-14 15:59 Jathon-cnblogs 阅读(678) 评论(0) 推荐(0)
摘要:KM算法的模板题,记录一下 KM算法 Accepted 2255 468MS 1756K 1600 B G++ #include "bits/stdc++.h" using namespace std; const int INF = 0x3f3f3f3f; const int MAXN = 305 阅读全文
posted @ 2019-03-08 16:16 Jathon-cnblogs 阅读(350) 评论(0) 推荐(0)
摘要:解法: 这题有点像冒泡排序,但是做这题并不需要冒泡排序。 假设第i个小朋友比第j个小朋友高,而且i < j 为了把队伍排成从小到大,第i个小朋友一定要去第j个小朋友的右边。又因为只能交换位置相邻的两个小朋友,所以第i个小朋友一定要和第j个小朋友换位置。同理如果第i个小朋友比第j个小朋友矮,但是i > 阅读全文
posted @ 2019-03-05 19:29 Jathon-cnblogs 阅读(251) 评论(0) 推荐(0)
摘要:先自己用dp解了一遍,然后看了官方讲解视频是用记忆化搜索做的。感觉那位老师的方法比较容易实现(效率上和我的差不多的);记录一下三种方法。 动态规划 地宫取宝 1.195KB C++ 正确 100 15ms 1.113MB #include "bits/stdc++.h" using namespac 阅读全文
posted @ 2019-03-05 09:50 Jathon-cnblogs 阅读(233) 评论(0) 推荐(0)
摘要:解法: 一开始不会做,看到标签说是贪心加二分忽然就会了,二分是分的是人口最多居住点的人口,检查人口最多的居住点人口为mid是否可行。贪心是如果从左往右循环就尽量把人口往左迁移,如果从右往左循环就尽量把人口往右迁移。 二分 + 贪心 1053 居民迁移 AC G++ 201ms 7MB #includ 阅读全文
posted @ 2019-03-02 10:03 Jathon-cnblogs 阅读(209) 评论(0) 推荐(0)
摘要:参考博客: https://blog.csdn.net/mitsuha_/article/details/76690634 https://blog.csdn.net/u014142379/article/details/51761551 解题过程: 先看了第一位大佬的博客,了解了这题的解法,但是没 阅读全文
posted @ 2019-03-01 13:17 Jathon-cnblogs 阅读(177) 评论(0) 推荐(0)