摘要: 授人以鱼不如授人以渔 本文尽量详细地讲述线段树的引入,实现,应用,以及相关进阶知识。 引入 引入线段树通用的例子: 给定一组整数nums,定义两种操作 修改列表里的第i个数据为val ① 查询区间和[L,R] ② 为了同时实现两种操作,现在考虑处理nums的方 阅读全文
posted @ 2025-02-05 18:33 云上寒烟 阅读(29) 评论(0) 推荐(0) 编辑
摘要: 反悔贪心=贪心选择+堆调整 只可意会不可言传 更好的理解还是多做题,这里直接把各大佬整理的反悔贪心做一遍吧。 灵神贪心题单中的反悔贪心部分 LCP 30. 魔塔游戏 给定一数组,计算每个前缀和,要求每个结果都为非负数,过程中可以选择将任意数据移到数组末尾,问至少需要移动几次。 如果不管移动多少次都无 阅读全文
posted @ 2025-01-23 02:17 云上寒烟 阅读(5) 评论(0) 推荐(0) 编辑
摘要: LeetCode Hot100 温故而知新 哈希 1. 两数之和 枚举-查询-添加 for(int i = 0; i < n; i++){ if(map.contains(target - nums[i])){ return {map[target - nums[i]], i}; } map[num 阅读全文
posted @ 2025-01-13 14:47 云上寒烟 阅读(48) 评论(0) 推荐(0) 编辑
摘要: Educational Codeforces Round 173 (Rated for Div. 2)题解(A-E) A. Coin Transformation 你有一个价值为n的硬币,每次操作,如果n大于3,可以把硬币拆成两个价值为n/4的硬币 执行任意多次后,至多可以获得多少硬币? 显然,这是 阅读全文
posted @ 2024-12-28 05:57 云上寒烟 阅读(65) 评论(0) 推荐(0) 编辑
摘要: Codeforces Round 993 (Div. 4) 现在div4出那么难干嘛... A. Easy Problem 输入一个数n,返回有多少组正整数(a,b) 满足a+b=n。 每个数可以选择[1,n-1]共计n-1对。 void solve() { int n = 0; cin > 阅读全文
posted @ 2024-12-18 02:34 云上寒烟 阅读(164) 评论(0) 推荐(0) 编辑
摘要: Codeforces Round 992 (Div. 2) 题解 A. Game of Division 给定长为n的数组和整数k,AB两人玩一个游戏,A先任选择一个数,B任选另一个数,如果两数之差被k整除 则A赢否则B赢。1<=n,k<=100 题解1。由于范围较小,可以暴力二维枚举i,j 要求( 阅读全文
posted @ 2024-12-11 20:40 云上寒烟 阅读(415) 评论(0) 推荐(0) 编辑
摘要: Tarjan算法详解 本文介绍利用Tarjan算法求无向图割边、割点、点双连通分量和边双连通分量。 一些概念 介绍图论相关概念,注意有些概念适用于有向图,但是本文均特指无向图。 连通 图上两个点至少有一条路径连接,则称两个点连通 连通图 图上任意两个点都是连通的,则称该图为连通图 连通分量 连通图的 阅读全文
posted @ 2024-11-28 13:14 云上寒烟 阅读(88) 评论(0) 推荐(0) 编辑
摘要: D. The Omnipotent Monster Killer 题目大意: 有一棵树,树节点数不超过3·105,每个节点的权值,定义为数组a(ai<1012),初始sum=0,每一轮执行如下操作: 计算当前剩余所有的点权和,累计到sum中 任选若干个互不相 阅读全文
posted @ 2024-07-28 02:57 云上寒烟 阅读(31) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示