- 博客(11)
- 收藏
- 关注
原创 [NOIP2009 提高组] 最优贸易(分层图)
题目链接:https://www.luogu.com.cn/problem/P1073题目描述简要题解分层图应用题这道题目实际上要求我们求出从1->n的旅途中(每个点可以多次询问)至多进行一次水晶球的买卖赚取差价。以此求最多能赚的钱,那么我们可以将整个旅途划分为以下三个状态。当前没有进行过任何买入和卖出操作当前已经进行过买入操作(即手里有水晶球,但未卖出)当前已经将手里的水晶球卖出。那么我们可以按照这三个状态,构造出三张平行图(分层图),首先由题目中的边建出原图,并将原图“复
2021-05-11 22:18:23
251
原创 2021年广东工业大学第十五届文远知行杯程序设计竞赛(同步赛)部分题解
2021年广东工业大学第十五届文远知行杯程序设计竞赛(同步赛)部分题解A.A M形字符串简要题解题解代码#include <iostream>#include <string>using namespace std;typedef unsigned long long ULL;const int P=131,N=300010;ULL p[N],h[N],h1[N];string str;ULL get(int l,int r){ return h[
2021-03-28 17:51:46
298
原创 第八届“图灵杯”NEUQ-ACM程序设计竞赛个人赛(同步赛)
第八届“图灵杯”NEUQ-ACM程序设计竞赛个人赛(同步赛)没注意开始时间,结果开赛的时候还在和小伙伴快乐剧本杀?? 不过补题体验还可以,难得的一场稍简单的比赛,好像除了博弈论基本都是模拟题了(bushi A.切蛋糕简要题解由题可得,要求每个人分得的蛋糕与1/k的绝对值差值不能大于1/2^10,因为每次切蛋糕都是对半分,首先考虑最好算的特殊状态,如果存在一种分法是分给每一个人的蛋糕大小相等,且和1/k的差值满足题意,那这样就不再需要考虑最优拆分策略了,由于总操作限制是不大于6000,事实证明
2021-02-01 20:07:22
390
原创 路由器固件解析
路由器固件解析简要题意现在的路由器事实上跑的都是嵌入式Linux,所谓固件,就是Linux系统保存在芯片中的一个镜像。现在请你找一个路由器的固件,对它进行分析,要求:- 能解析出这个固件内的文件系统,展示整个目录树;- 能够导出其中特定的文件或目录;- 能够把固件中的root口令清除前期分析我们需要解析的固件是一个bin文件,因此我们首先的思路就是通过winhex工具打开winhexwindows下的16进制编辑器winhex打开固件后,我们可以看到某些数据段是可以直接通过as
2021-01-19 22:40:18
4219
3
原创 Codeforces - Good Bye 2020
前言A — E 题解A. Bovine Dilemma概括题意给n个从1开始严格递增的数xi,代表坐标轴上的(xi,0)点,统计所有的由(xi,0),(xj,0),(0,1)三个点组成的面积不同的三角形个数。简单题解下标从1开始严格递增,不会有重复的点,把x轴的两个点当作底,可知三角形的高恒为1,因此只需判断三角形不同的底的个数,即xi-xj有多少个不同的值。AC代码#include <iostream>#include <cstdio>#include &l
2020-12-31 10:58:58
441
2
原创 表达式树创建与计算(中缀表达式转逆波兰式)
题目描述给定一串计算表达式例如 (1+2*4-2)3+4(2+4)/2计算此表达式的值,并输出此表达式树的前序中序后序序列。题解思路首先,给定的表达式为正常逻辑的中缀表达式,我们需要将其转化为逆波兰式(后缀表达式),如下给出理由例如 a*b-c它的二叉树如下前序序列为:- * a b c中序序列为: a * b - c后序序列为: a b * c -对于前序序列,运算顺序应该为首先对离运算符最近的ab操作,ab前有号,将ab相乘,代替ab的位置,然后此时离运算符最近的为a
2020-11-18 18:17:03
2363
原创 团体程序设计天梯赛-玩转二叉树(简洁建树)
题目来源https://pintia.cn/problemsets/994805046380707840/problems/994805065406070784题目描述题解思路知道中序和前序,就可以唯一确定二叉树.1 2 3 4 5 6 7 中序4 1 3 2 6 5 7 前序样例中,4为整棵树的根节点,从4进入,在中序中找到4,因为中序遍历先访问左子树,再根节点,再右子树,因此中序中4左侧就为左子树结点,记此时根节点左子树结点数为a,右侧为右子树结点,记此时根节点右子树结点数为b。
2020-11-18 17:27:33
211
原创 k-Amazing Numbers(数学+思维)
题目来源https://codeforces.com/contest/1417/problem/C题目描述题目描述给定一个序列,统计这个序列长度为1-n长度的连续子序列的分别公共最小值,不存在输出-1。题解思路首先统计相同的数在序列中的最大间隔,包括此数对序列头,序列尾的间隔(利用map记录此数字上一次出现的index下标即可)。此间隔就是能取到这个数字为贡献的最小序列长度。然后对于每个数字能做出贡献的最小代价长度进行更新,例如数字4,2都最小要长度3的子序列才可以取到,那么ans[3]就更新成
2020-11-05 19:01:42
140
原创 Increase and Copy(公式+数学)
题目来源https://codeforces.com/contest/1426/problem/C题目描述题目描述T组数据,每组给一个n,原始序列为1,每次可以进行如下两个操作之一,问使序列和大于等于n,至少需要多少次操作。在序列中将一个数增加1选择序列中一个数将其添加到序列尾题解思路 首先明确一点,最优解一定是先将1加到某个数x,再将x不断添加到序列中直到和大于等于n,(因为假设出现先添加此数到序列中,再将此数加1的情况,我们将其操作顺序反转,得到的贡献值一定是变大的)。 那么我们的
2020-11-01 17:33:45
390
1
原创 Cyclic Permutations (正反向思维(详细个人证明)+快速幂)
题目来源https://codeforces.com/contest/1391/problem/C题目原文题目描述对于所有长度为n的排列,找出有多少个满足其中存在至少一个简单环。(对于排列中的每个值a[i],和其左右两边第一个大于它的a[j]连一条无向边)题解思路首先,正向思考,满足至少有一个简单环的排列,内部至少存在一组相邻三个数中的中间数最小的情况(思维证明都是个人思考,可能存在不严谨性,如有问题欢迎指出,萌新我会及时修改的)证明如下:首先存在上述情况的排列一定满足,对于a[i]和
2020-08-10 14:20:05
567
1
原创 [SCOI2005]繁忙的都市(并查集+二分)题解
题目来源https://www.luogu.com.cn/problem/P2330题目描述城市C是一个非常繁忙的大都市,城市中的道路十分的拥挤,于是市长决定对其中的道路进行改造。城市C的道路是这样分布的:城市中有n个交叉路口,有些交叉路口之间有道路相连,两个交叉路口之间最多有一条道路相连接。这些道路是双向的,且把所有的交叉路口直接或间接的连接起来了。每条道路都有一个分值,分值越小表示这个道路越繁忙,越需要进行改造。但是市政府的资金有限,市长希望进行改造的道路越少越好,于是他提出下面的要求:1.改造
2020-07-28 11:21:04
486
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人