02 2020 档案

摘要:https://ac.nowcoder.com/acm/contest/3006/G 题意 牛牛和牛能进入了一个迷宫,这个迷宫里除了墙壁的阻拦,还会有僵尸的阻拦。情况十分复杂,牛能为了更快的追逐牛牛,迅速放出了大招,让牛牛原地眩晕,而眩晕的解药,也只有牛能自己拥有。 这一个迷宫可以简化为一个 n 行 阅读全文
posted @ 2020-02-20 15:41 Vivid-BinGo 阅读(179) 评论(0) 推荐(0)
摘要:https://ac.nowcoder.com/acm/contest/3006/B 题意 由于牛牛战队经常要外出比赛,因此在全国各地建立了很多训练基地,每一个基地都有一个坐标(x,y)。 这周末,牛牛队又要出去比赛了,各个比赛的赛点都在 x 轴上。牛牛战队为了方便比赛,想找一个到达训练基地最大距离 阅读全文
posted @ 2020-02-19 23:57 Vivid-BinGo 阅读(169) 评论(0) 推荐(0)
摘要:https://ac.nowcoder.com/acm/contest/3003/J 题意 有 n 个一次函数,第 i 个函数为 fi​(x)=ki​×x+bi​。 有 m 次操作,每次操作为以下二者其一: • 1 i k b fi​(x) 修改为 fi​(x)=k×x+b。 • 2 l r 求 f 阅读全文
posted @ 2020-02-18 22:18 Vivid-BinGo 阅读(148) 评论(0) 推荐(0)
摘要:https://ac.nowcoder.com/acm/contest/3003/I 题意 有 n 个星球,第 i 个星球有权值 vi。 任意两个星球之间均可以建立传送通道,不过花费并不一样。第 i 个星球与第 j 个星球的之间建立传送通道的花费是 lowbit(vi​⊕vj​)。 要使这 n 个星 阅读全文
posted @ 2020-02-18 15:59 Vivid-BinGo 阅读(158) 评论(0) 推荐(0)
摘要:题意 设第 i 天的影响力为 ,那么 ,,对于 , 。 她们想知道第 天影响力是多少? 由于这个数可能非常大,只需要输出其对 取模的值就可以了。 题解 费马小定理 + 矩阵快速幂。 代码 #include<bits/stdc++.h> using namespace std; const long 阅读全文
posted @ 2020-02-18 14:21 Vivid-BinGo 阅读(179) 评论(0) 推荐(0)
摘要:https://ac.nowcoder.com/acm/contest/3006/F 题意 在ACM比赛里,除了CE以外都是有效的提交。每一个提交都会有其评测的结果,或是AC,或是RJ(Rejected,包含各种不通过的情况)。往往一个人上去提交的时候,总有一个队友会坐在边上等着结果。那个人,往往都 阅读全文
posted @ 2020-02-17 14:00 Vivid-BinGo 阅读(171) 评论(0) 推荐(0)
摘要:https://ac.nowcoder.com/acm/contest/3005/D 题意 输入一个数列 a ,你需要输出其中异或值为0的不同子段的数量。 一个子段 [l,r] 的异或值为al ⊕ al+1 ⊕ al+2 ⊕ … ⊕ar​。 两个子段被视为相同的,当且仅当其开始和结束位置均对应相同。 阅读全文
posted @ 2020-02-14 22:10 Vivid-BinGo 阅读(130) 评论(0) 推荐(0)
摘要:https://ac.nowcoder.com/acm/contest/3005/C 题意 给出一个长度为 n 的数列 a1,a2,…,an,求其长度为 k 的连续子段的乘积对 998244353 取模余数的最大值。 题解 尺取法。 代码 #include<bits/stdc++.h> using 阅读全文
posted @ 2020-02-14 18:24 Vivid-BinGo 阅读(189) 评论(0) 推荐(0)
摘要:https://ac.nowcoder.com/acm/contest/3003/H 题意 有 n 个元素( 编号 1..n ),第 i 个元素的能量值为 ai​。 选择至少 k 个元素来施放一次魔法,魔法消耗的魔力是这些元素能量值的极差。形式化地,若所用元素编号集合为 S,则消耗的魔力为 maxi 阅读全文
posted @ 2020-02-12 23:02 Vivid-BinGo 阅读(168) 评论(0) 推荐(0)
摘要:https://ac.nowcoder.com/acm/contest/3002/C 题意 在一个无限大的平面中,一个人站在 这个坐标。 有 n 个靶子,第 i 个靶子的坐标是 在 x 轴或 y 轴上放置一块挡板来挡住弓箭的轨迹,使可以射中的靶子数量不超过 k 个,挡板的最短长度是多少? 注: 弓箭 阅读全文
posted @ 2020-02-10 14:58 Vivid-BinGo 阅读(200) 评论(0) 推荐(0)
摘要:https://ac.nowcoder.com/acm/contest/3002/F 题意 这个树有 个顶点, 条边。每个顶点被染成了白色或者黑色。 取两个不同的点,它们的简单路径上有且仅有一个黑色点的取法有多少? 注: ①树上两点简单路径指连接两点的最短路。 ② 和 的取法视为同一种。 题解 并查 阅读全文
posted @ 2020-02-10 13:33 Vivid-BinGo 阅读(156) 评论(0) 推荐(0)
摘要:https://ac.nowcoder.com/acm/contest/3002/H 题意 对于一个 “01” 串而言,每次操作可以把 0 字符改为 1 字符,或者把 1 字符改为 0 字符。所谓 “01” 串,即只含字符 0 和字符 1 的字符串。 最多有 次操作的机会。在操作之后找出一个尽可能长 阅读全文
posted @ 2020-02-09 23:39 Vivid-BinGo 阅读(172) 评论(0) 推荐(0)
摘要:https://ac.nowcoder.com/acm/contest/3002/A 题意 满足以下三个条件的三角形是“好三角形”。 1.三角形的三个顶点均为格点,即横坐标和纵坐标均为整数。 2.三角形的面积为 。 3.三角形至少有一条边和 轴或 轴平行。 在平面中选取一个大小为 的矩形格点阵,可以 阅读全文
posted @ 2020-02-09 21:04 Vivid-BinGo 阅读(172) 评论(0) 推荐(0)
摘要:题解 看完这题,直接来一套最短路。这次WA了,淦。 因为这道题路径的选择条件为:第一标尺是距离短优先,第二标尺是从管理中心带出去的自行车少的优先,第三标尺是从站点带回去的自行车少的优先。 只用最短路算法解决这道题的话,第二标尺和第三标尺不能被正确维护,因为最短路算法的特点,会出现改变其他站点的自行车 阅读全文
posted @ 2020-02-05 23:32 Vivid-BinGo 阅读(147) 评论(0) 推荐(0)
摘要:题目链接 Tarjan #include<bits/stdc++.h> using namespace std; const int maxn=5e6+5; struct node { int v,index,next; node(){} node(int a,int b,int c) { inde 阅读全文
posted @ 2020-02-04 14:04 Vivid-BinGo 阅读(175) 评论(0) 推荐(0)
摘要:定义 给定一棵有根树,若结点 z 既是结点 x 的祖先,也是结点 y 的祖先,则称 z 是x,y的公共祖先。 在 x,y 的所有公共祖先中,深度最大的一个称为 x,y 的最近公共祖先,记为LCA(x,y)。 LCA(4 , 7) = 2,LCA(6,7) = 5 实现 暴力大法好 若求LCA(4 , 阅读全文
posted @ 2020-02-03 23:44 Vivid-BinGo 阅读(221) 评论(1) 推荐(0)
摘要:题解 题不难,记录一下红黑树特征。 👉 每个结点是黑色或者红色。 👉 根结点是黑色。 👉 每个叶子结点(NULL)是黑色。 👉 如果一个结点是红色的,则它的子结点必须是黑色的。 👉 每个结点到叶子结点所经过的黑色结点的个数相同。 代码 #include<bits/stdc++.h> usi 阅读全文
posted @ 2020-02-02 16:35 Vivid-BinGo 阅读(121) 评论(0) 推荐(0)
摘要:题解 DFS。比较巧的一点是,利用 map <int , int> = line 存储。比如一号线上有两个相邻的站点 pre,end,那么就可以这样存储 map[pre*10000 + end] = map[end*10000 + pre] = 1,表示从 pre 到 end 和 end 到 pre 阅读全文
posted @ 2020-02-02 00:53 Vivid-BinGo 阅读(352) 评论(0) 推荐(0)