
南昌理工
文章平均质量分 80
青山_12
这个作者很懒,什么都没留下…
展开
-
codeforces. Parsa‘s Humongous Tree
贪心 + 树形dp(南昌理工学院)1.题目翻译2.解题思路三级目录1.题目翻译传送门帕萨在n个顶点上有一棵巨大的树。在每个顶点v上,他写了两个整数lv和rv。为了使帕萨的树看起来更加雄伟,尼玛想给它指定一个数字av(lv)≤影音≤rv)到每个顶点v,以使帕萨树的美最大化。尼玛的美感相当奇怪。他把这棵树的美丽定义为|au−av| 的总和覆盖树的所有边缘(u,v)。因为帕萨的树太大了,尼玛不能靠自己最大限度地美化它。你的任务是为帕萨的树找到最大可能的美。输入第一行包含一个整数t(1≤T≤250原创 2021-08-06 15:20:56 · 294 阅读 · 0 评论 -
D. Maximum Sum of Products(前缀和 + 区间dp)
南昌理工学院题目介绍解题思路参考代码题目介绍传送门翻译后D最大乘积和每测试2秒的时间限制每测试256兆字节的内存限制输入标准输入输出标准输出给出了两个长度为n的整数数组a和b。最多可以反转阵列a的一个子阵列(连续子段)。您的任务是反转这样一个子数组,该子数组的和∑i=1nai⋅bi最大化。输入第一行包含一个整数n(1)≤N≤5000).第二行包含n个整数a1,a2,…,an(1≤人工智能≤107).第三行包含n个整数b1,b2,…,bn(1≤毕≤107).输出打印单个整数-原创 2021-07-31 11:50:15 · 504 阅读 · 0 评论 -
acwing周赛第8场题解
南昌理工学院1.最小消耗(简单)1.1 解题思路1.2 参考代码2.选取石子(中等)2.1 解题思路2.2 参考代码3.更新线路 (困难)3.1 解题思路3.2 参考代码1.最小消耗(简单)传送门有 n 个怪兽等待你去消灭。怪兽共分为两种形态,不妨用 0 和 1 来表示。消灭一个 0 形态的怪兽需要耗费的法力值为 a。消灭一个 1 形态的怪兽需要耗费的法力值为 b。你还可以使用改造魔法将 0 形态怪兽改造为 1 形态或将 1 形态怪兽改造为 0 形态。改造一个怪兽需要耗费的法力值为 c。原创 2021-07-23 10:29:07 · 674 阅读 · 2 评论 -
树状数组模板总结
树状数组1. 一维树状数组的应用场景1.1单点修改 + 区间查询1.2区间修改 + 单点查询1.3区间修改 + 区间查询1. 一维树状数组的应用场景解决涉及一维区间的在线操作问题。(如单点修改 + 区间查询、区间修改 + 单点查询、区间修改 + 区间查询)1.1单点修改 + 区间查询例题传送门inline int lowbit(int x) // 求二进制下最低位的1{ return x & -x;}inline void add(int x, int d) //单点修改原创 2021-07-16 17:37:42 · 460 阅读 · 1 评论 -
acwing 3725.构造完全图(状压dp)
acwing 3725.构造完全图1.题目介绍2.解题思路代码实现1.题目介绍题目传送门给定一个由 n 个点和 m 条边构成的无向连通图。我们希望通过一系列操作将其变为一个完全图(即每对不同的顶点之间都恰有一条边相连)。每次操作时,可以选择其中一个点,找到所有和它直接相连的点,使这些点两两之间连边(若两点之间已经存在边,则无需重复连接)。请问,至少多少次操作以后,可以将整个图变为一个完全图?输入格式第一行包含两个整数 n,m。接下来 m 行,每行包含两个整数 u,v,表示点 u 和点 v原创 2021-07-10 15:14:39 · 195 阅读 · 0 评论 -
Hoof, Paper, Scissors (Silver)
传送门本博客由南昌理工赞助支持。译文描述您可能听说过“岩石,纸,剪刀”游戏。奶牛喜欢玩类似的游戏,他们称之为“蹄,纸,剪刀”。“蹄,纸,剪刀”的规则很简单。两只母牛互相对抗。他们都数到三,然后每个人同时做出一个代表蹄,一张纸或一把剪刀的手势。蹄打剪刀(因为蹄可以砸掉一把剪刀),剪刀打纸(因为剪刀可以剪纸),而纸拍着蹄(因为蹄可以剪纸)。例如,如果第一头母牛做出“蹄”手势,而第二头做出“纸”手势,则第二头母牛获胜。当然,如果两头牛都做出相同的手势,也可以打领带。农夫约翰想在N场“蹄,纸,剪刀”游戏中原创 2021-01-29 16:17:46 · 428 阅读 · 1 评论 -
南昌理工寒假组队积分赛3 D题(二维差分+二维前缀和)
传送门MonitorProblem Description题意大致如下小腾有一块 n * m的土地,但最近小腾发现自己的庄稼经常被一群人偷,于是他决定安装一些监视器,找到所有的人,然后和他们谈判。不过,小滕买的显示器不好,每个显示器只能监视一个长方形内的庄稼。Xiaoteng安装了p个监视器,每个监视器监视的矩形是已知的。输入有多个测试用例。每种情况从一条包含两个整数n,m(1≤n,1≤m,n×m≤107)的线开始,表示土地面积。第二行包含一个整数p(1≤p≤106),表示Xiaoteng原创 2021-01-22 15:05:05 · 207 阅读 · 0 评论 -
牛客IOI周赛21-普及组B题题解
传送门牛牛即将面临牛学校的期末考试,但是什么都没有复习的他,只好临时抱佛脚。转眼间,牛牛的期末考已经结束了,现在,牛牛所在的年级一共有n个班,每个班有a_i个人,牛牛想知道,在第k班排第p位的人在l到r班之间的总排名是多少(排名是从分数从高到低)。输入描述:第一行一个整数n,表示牛牛所在年级的班级数。接下来n行,每行首先有一个整数a-i表示这个班的人数,接下来有a-i个数x,表示每个人的分数(分数非有序给出)。一个整数q,表示牛牛向你询问的次数。接下来q行,每行四个整数l,r,k,p,表示询问原创 2021-01-17 12:10:22 · 508 阅读 · 0 评论 -
二分查找算法(随机, 最左, 最右)
二分查找算法随机二分查找二分查找最左(第一次出现)二分查找最右(最后一次出现)1.定义二分查找算法是一种效率较高的查找算法,每次查找能把查找范围缩小一半,故也称为折半查找(查找前提:所查区间有序)。2.举个栗子现在小明在玩一个猜数游戏,游戏会在(0 ,100]内给定一个数,现在要小明猜这个数,如果小明猜对了,游戏会提示猜对了,游戏结束,如果小明猜错了,它会提示小明的猜的数比答案小了或者大了,要怎么猜才能尽快猜出答案。现假定答案是69, 我们要在0 - 100 内去猜。一.如果不看提示1.最好的原创 2020-09-28 12:56:06 · 2305 阅读 · 1 评论 -
最短路算法总结
最短路算法总结迪杰斯特拉算法spfa算法弗洛伊德算法迪杰斯特拉算法一.定义一种基于贪心思想进行的最短路求解方法。(即每次计算距离当前起点最短的点(标记),并以上以距离最短的点为新起点,如此反复遍历所以未标记的节点。)二.优点1.朴素算法时间复杂度(n^2),堆优化后mlogN.不仅可以计算起点与终点之间的最短路,还能算出起点与其他所有点之间的最短路。三.缺点1.不能处理负权图。四.模板朴素算法(n^2)会被10e5的数据卡死,所以这里贴优化后的版本。(源自某位大佬)#include&l原创 2020-09-19 14:48:53 · 266 阅读 · 0 评论 -
最短路算法1(Dijkstra算法)
最短路算法Dijkstra算法Bellman-Ford算法Floyd算法Dijkstra算法迪杰斯特拉算法的原理:1.刚开始假设从起点 o 到起点 o 的距离为0,到其他节点的距离为无穷大(初始化)。2.从起点 o 开始(标记起点 o ),找与相连的点,进行边的 ” 松弛“ 操作(即更新这点的权值)。3.从Bellman-Ford算法Floyd算法...原创 2020-08-29 14:35:32 · 177 阅读 · 0 评论 -
子序列问题
有趣的序列最长上升子序列(LIS)二级目录三级目录最长上升子序列(LIS)二级目录三级目录最长上升子序列LIS)LIS(最长上升子序列)n*n模板//定义a[n]为要求的序列for (int i = 1; i <= n; ++i) { na = 0; for (int j = 1; j <= i; ++j) {//寻找到a[i]的最长子序列长度 if (a[i] > a[j]) na = max(na, dp[j]); } dp[i] = na原创 2020-08-23 11:15:36 · 184 阅读 · 0 评论