ICode9

精准搜索请尝试: 精确搜索
  • GYM103373F(线段树,子段问题)2022-08-08 10:03:21

    GYM103373F(线段树,子段问题) 题意 给定一个01串。定义01交替或者10交替的子段为交替串。 有两个操作: flip区间 \([l,r]\) 输出区间 \([l,r]\) 内交替串的数量 思路 如果有极长交替串长度,可以算出交替串数量 于是考虑维护交替串的长度。我们用线段树对其维护。 维护当前结点的答

  • 力扣算法JS LC [96. 不同的二叉搜索树] LC [416. 分割等和子集]2022-08-01 22:37:37

    ​  LC 96. 不同的二叉搜索树 给你一个整数 n ,求恰由 n 个节点组成且节点值从 1 到 n 互不相同的 二叉搜索树 有多少种?返回满足题意的二叉搜索树的种数。 示例 1: ​ 编辑 输入:n = 3 输出:5 示例 2: 输入:n = 1 输出:1 解题思路:遍历整数 n ,让每个数都去做一次根节点,然后求出每个

  • LOJ #2307. 「NOI2017」分身术2022-08-01 19:02:11

    题目叙述 一个点集,每次去掉一个集合内部的一些点(不超过 100 个),求剩下节点构成的凸包面积是多少。强制在线。 题解 基本做法是每次求出 100 层凸包(一层一层向内求凸包)。每次去掉一些节点,就找出最内部的没有任何一个节点被去掉的凸包,向外每层相当于添加一个凸包的一个连续部分,去掉原

  • ABAP 字符串替换(保留后空格)2022-08-01 09:32:36

      DATA: lc_str1 TYPE char120 VALUE '123&123&321'. DATA: lc_str2 TYPE char120 VALUE '123&123&321'. DATA itab TYPE TABLE OF string. SPLIT lc_str1 AT '&' INTO TABLE itab. CONCATENATE LINES OF itab INTO lc_s

  • P3521 [POI2011]ROT-Tree Rotations (线段树合并)2022-07-24 22:31:57

    对于一个非叶节点,不管是否要交换子树,其左右子树内部的逆序对数都不会受影响(内部的顺序并不会影响外部产生的逆序对数),受影响的是跨左右子树的情况,所以我们考虑统计这一部分的逆序对数。节点x的左右子树根节点为p,q,u+=size[t[p].rc] * size[t[q].lc],交换后 v+=size[t[p].lc]*size[t[q

  • P4556 [Vani有约会]雨天的尾巴 /【模板】线段树合并 (树上差分+线段树合并)2022-07-24 15:02:01

    显然的树上差分问题,最后要我们求每个点数量最多的物品,考虑对每个点建议线段树,查询子树时将线段树合并可以得到答案。 用动态开点的方式建立线段树,注意离散化。 1 #include<bits/stdc++.h> 2 using namespace std; 3 const int N = 1e5 + 10; 4 struct node { 5 int

  • LC 9. 回文数2022-07-23 18:05:11

    1. 问题描述 给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。 回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。 例如,121 是回文,而 123 不是。-2^31 <= x <= 2^31 - 1 示例 1: 输入:x = 121 输出:true 示例 2: 输入:x = -121 输出:false 解释:从左向右读,

  • LC 8. 字符串转换整数2022-07-23 18:04:42

    1. 问题描述 请你来实现一个 myAtoi(string s) 函数,使其能将字符串转换成一个 32 位有符号整数(类似 C/C++ 中的 atoi 函数)。s 由英文字母(大写和小写)、数字(0-9)、' '、'+'、'-' 和 '.' 组成。 函数 myAtoi(string s) 的算法如下: 读入字符串并丢弃无用的前导空格 检查下一个字

  • LC 4. 寻找两个正序数组的中位数2022-07-23 10:35:09

    1. 问题描述 给定两个大小为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的中位数。 进阶:你能设计一个时间复杂度为 O(log (m+n)) 的算法解决此问题吗? 示例 1 输入:nums1 = [1,3], nums2 = [2] 输出:2.00000 解释:合并数组 = [1,2,3] ,中位数 2 示例 2

  • LC 3. 无重复字符的最长子串2022-07-23 10:04:04

    问题描述 给定一个字符串,请你找出其中【不含有重复字符】的最长子串的长度。 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。 示例 2: 输入: "bbbbb" 输出: 1 解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。

  • 力扣算法JS LC [135. 分发糖果] LC [860. 柠檬水找零]2022-07-14 21:04:18

    ​           LC 135. 分发糖果 n 个孩子站成一排。给你一个整数数组 ratings 表示每个孩子的评分。 你需要按照以下要求,给这些孩子分发糖果: 每个孩子至少分配到 1 个糖果。 相邻两个孩子评分更高的孩子会获得更多的糖果。 请你给每个孩子分发糖果,计算并返回需要准备的

  • 洛谷 P4004 - Hello world!(分块+势能线段树)2022-07-10 22:03:45

    洛谷题面传送门 简单分块题,可惜卡了一年的常( 道理很明显,碰到这种不可 polylog 维护的题肯定需要分块,弱化版可见 P3591 POI2015 ODW。而此题又涉及开根号,那又一个一眼的套路:segment beats,这样做法就出来了:设阈值 \(B\),然后。 对于 \(k>B\),查询修改都暴力。 对于 \(k\le B\),我们先

  • Docker centos7 中文乱问题解决方案2022-07-10 14:02:42

    Docker centos7 中文乱问题解决方案 baidu_33209239 已于 2022-04-15 11:27:12 修改 255 收藏 2 分类专栏: docker 文章标签: docker 于 2022-04-15 11:23:15 首次发布   使用docker centos7镜像部署java项目,发现中文文件名称出现乱码。真对此问题,大

  • LCT 板子2022-07-10 09:32:56

    namespace LCT { int f[N], c[N][2], s[N], st[N]; bool r[N]; inline bool nroot(int); inline void pushup(int); inline void pushr(int); inline void pushdown(int); inline void rotate(int); inline void splay(int); inline void access(int); inline void makeroot(i

  • [LC 676] Trie树简单运用2022-07-09 12:41:14

    https://leetcode.cn/problems/implement-magic-dictionary/ static int son[10010][26]; int idx = 0; static int cnt[10010]; class MagicDictionary { public: //Trie树相关的数据; MagicDictionary() { memset(son, 0, sizeof son); memset(cnt, 0,

  • 最长上升子序列2022-07-02 17:34:11

    link 挺水一题。 由于不强制在线,可以把所有操作读入之后,把最后的数组处理出来了再考虑答案(主要是平衡树动态维护LIS一时没想到怎么做)。显然有结论,第i次的答案可以看成是最后数组剔除掉所有大于i的数剩下的序列的LIS,而所有大于i的数是不会被小于等于i的数吸纳的,所以第i次的答案相当

  • 软件中的文本本地化2022-06-30 21:01:53

    一、gnu的解决方案 从网上的资料可以看到,gnu对于本地化的支持是基于gettext套件完成。通过xgettext工具扫描代码中出现的字符串,生成po(Portable Object)文件。在代码中再通过特定的函数来读取并对字符串进行本地化。 二、xgettext的实现 1、keyword 从代码上看,xgettext的实现比较

  • es的增删改查2022-06-25 00:32:01

    # 根据索引和条件查找 GET lc_auth_user/_search { "query": { "bool": { "must": [ {"term": { "username.keyword": { "value": "admin" } }},

  • 力扣算法JS LC [491. 递增子序列] LC [332. 重新安排行程]2022-06-23 21:33:01

    ​  LC 491. 递增子序列 给你一个整数数组 nums ,找出并返回所有该数组中不同的递增子序列,递增子序列中 至少有两个元素 。你可以按 任意顺序 返回答案。 数组中可能含有重复元素,如出现两个整数相等,也可以视作递增序列的一种特殊情况。 示例 1: 输入:nums = [4,6,7,7] 输出:[[4,6],[4

  • 力扣算法JS LC [17. 电话号码的字母组合] LC [93. 复原 IP 地址]2022-06-19 23:38:06

    ​ LC 17. 电话号码的字母组合 给定一个仅包含数字 2-9 的字符串,返回所有它能表示的字母组合。答案可以按 任意顺序 返回。 给出数字到字母的映射如下(与电话按键相同)。注意 1 不对应任何字母。 ​ 编辑 示例 1: 输入:digits = "23" 输出:["ad","ae","af","bd","be","bf","cd",&quo

  • 数据结构复习代码——线性表合并2022-06-16 19:05:14

    1、合并A、B线性表至A表中并去除重复元素 //此函数为合并线性表A和B的函数---合并两表重复元素 void union(List &La,List Lb) //该函数中La作为输入和输出。Lb作为输入 { //将所有在线性表Lb中但不在La中的数据元素插入到La中 La_len = ListLength(La); Lb_l

  • 力扣算法JS LC 77. 组合 LC 216. 组合总和 III2022-06-10 23:35:08

    LC 77. 组合 给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。 你可以按 任何顺序 返回答案。 示例 1: 输入:n = 4, k = 2输出:[ [2,4], [3,4], [2,3], [1,2], [1,3], [1,4],] 示例 2: 输入:n = 1, k = 1输出:[[1]] 解题思路:使用递归+回溯 代码: let result = []

  • 力扣算法JS ​LC 63. 不同路径 II​ ​LC 343. 整数拆分​2022-06-10 00:03:42

    LC 63. 不同路径 II 一个机器人位于一个 m x n 网格的左上角 (起始点在下图中标记为 “Start” )。 机器人每次只能向下或者向右移动一步。机器人试图达到网格的右下角(在下图中标记为 “Finish”)。 现在考虑网格中有障碍物。那么从左上角到右下角将会有多少条不同的路径? 网格中的障

  • 力扣算法JS LC [509. 斐波那契数] LC [70. 爬楼梯]2022-06-08 00:04:50

    动规算法采用了 代码随想录 的动规五部曲的步骤来做 https://programmercarl.com/%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92%E7%90%86%E8%AE%BA%E5%9F%BA%E7%A1%80.html#%E4%BB%80%E4%B9%88%E6%98%AF%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92 LC 509. 斐波那契数 斐波那契数 (通常用 F(n)

  • leetcode2276 统计区间中的整数数目2022-06-06 15:01:15

    思路: 动态开点线段树,这里维护了区间和和区间赋值。 实现: 1 class SegmentTree { 2 public: 3 int N = (int)1e9; 4 class Node { 5 public: 6 // ls 和 rs 分别代表当前区间的左右子节点 7 Node*ls=nullptr, *rs=nullptr; 8 // val

专注分享技术,共同学习,共同进步。侵权联系[admin#icode9.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有