ICode9

精准搜索请尝试: 精确搜索
  • 归并排序详解2022-07-29 19:02:07

    时间复杂度为 \(O\)\((\)\(n\) \(log\) \(n\)\()\),是一种稳定的排序。 思想 归并排序是一种基于分治思想的排序算法,总的来说有三个步骤: 分解:将 \(n\) 个元素分为长度为 \(\frac{n}{2}\) 的子序列。 解决:运用合并排序法对两个子序列递归的排序。 合并:合并两个已经排好序的子序

  • 2022 杭电多校 第三场 A - Equipment Upgrade2022-07-29 11:06:08

    题意 一把武器要升级到 \(n\), 每次尝试升级要花费 \(c_i\), 有 \(P_i\) 的概率成功升级到 \(i + 1\) 级, 失败会降级, 降 \(j\) 级的概率如下 \[\left(1-p_i\right)\frac{w_j}{\sum_{k=1}^i w_k} \]现给出 \(c_i\), \(P_i\)(以百分制形式给出), \(w_i\), 保证 \(P_0 = 100\) 思路

  • LeetCode 74 Search a 2D Matrix 二分2022-07-29 02:32:09

    Write an efficient algorithm that searches for a value target in an m x n integer matrix matrix. This matrix has the following properties: Integers in each row are sorted from left to right. The first integer of each row is greater than the last integer

  • 来自学长的馈赠52022-07-28 16:00:30

    A. 烷基计数 \(f[i]\)表示由\(i\)个碳原子构成的烷基数量 \(g[i][j]\)表示由\(i\)个碳原子构成的只有两棵子树,其中较小的一棵大小为\(j\)的烷基数量 求\(f[i]\),先考虑只有两棵子树的情况,如果两个子树大小不一样那么有\(f[j] * f[i - 1 - j]\)种方案,如果两棵子树大小相同,那就不能直

  • AcWing 790. 数的三次方根2022-07-28 15:02:55

    实数二分模板题 实数二分与整数二分差不多,但要注意精度。 首先,我们知道,答案在 \(-10000 \sim 10000\) 之间。 如何判断在区间内能否二分呢?那就需要运用到二分的二段性了。 我们可以把这个区间分成两部分: 左区间 $ < \sqrt[3]{n}$; 右区间 $ \geq \sqrt[3]{n}$。 具体步骤: 找中间

  • 离散化算法2022-07-28 12:31:46

    离散化 什么是离散化? 一些数据范围比较大,但是数据的个数不多,将其数字映射成较小的下标 从本质上来看离散化可以看成哈希,是一种特殊的哈希,其保证数据在哈希以后仍然保持原来的顺序 离散化的步骤 排序 去重(排序好了才能去重,可以用stl中的unique去重然后用erase去除) 访问的时候

  • day302022-07-26 23:02:29

    1.剑指 Offer 17. 打印从 1 到最大的 n 位数  1)直接列举(执行用时比分治短) 1 class Solution { 2 public: 3 vector<int> printNumbers(int n) { 4 vector<int> res; 5 int num = 0; 6 for(int i = 0;i < n;i ++) 7 num = num * 10 + 9;

  • 二分搜索的递归与非递归实现2022-07-26 22:35:36

    二分搜索的非递归写法很直白,就是区间问题,维护三个变量从而达到搜索的目的,代码如下。 int Binary_Search(SSTable L, ElemType key) { int low = 0, high = L.TableLen - 1,mid;//low和high是下标大小。 while (low <= high) { mid = (low + high) / 2;

  • 二分法2022-07-26 19:07:24

    二分查找也常被称为二分法或者折半查找,每次查找时通过将待查找区间分成两部分并只取一部分继续查找,将查找的复杂度大大减少。对于一个长度为 O(n) 的数组,二分查找的时间复杂度为 O(log n)。 1、给你一个非负整数 x ,计算并返回 x 的 算术平方根 。 由于返回类型是整数,结果只保留

  • 2022“杭电杯”中国大学生算法设计超级联赛(2) 题解2022-07-26 10:03:46

    A. Static Query on Tree 将集合 \(|A|,|B|,|C|\) 内取出的点记为 \(a,\ b,\ c\),我们可以从题目条件中提取三个信息 ① 满足要求的点一定在 a到c 的这条链上 ② 满足要求的点一定在 b到c 的这条链上 ③ 满足要求的点一定在 c 的子树内 利用树链剖分+线段树,我们可以在树上维护 \(a,

  • 二分板子2022-07-25 23:33:24

    二分板子 1,整数二分 bool check(int x) {/* ... */} // 检查x是否满足某种性质​// 区间[l, r]被划分成[l, mid]和[mid + 1, r]时使用:int bsearch_1(int l, int r){    while (l < r)   {        int mid = l + r >> 1;        if (check(mid)) r = mid;    // chec

  • 35题:搜索插入位置2022-07-25 22:00:31

    例题: 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 请必须使用时间复杂度为 O(log n) 的算法。 输入: nums = [1,3,5,6], target = 5 输出: 2 输入: nums = [1,3,5,6], target = 2 输出: 1 输入:

  • 来自学长的馈赠32022-07-25 08:34:10

    A. 学数数 单调栈 + 排序 + 前缀和 + 二分 单调栈应该是左边乘右边,考场脑抽写成长度。 对\(lowe\_bound\),\(upper\_bound\)使用不熟 code #include<cstdio> #include<cstring> #include<algorithm> using namespace std; inline int read(){ int x = 0; char c; c = getchar();

  • 查询索引缺失和无效索引2022-07-24 23:01:13

    查询索引缺失: SELECT avg_total_user_cost, avg_user_impact, migs.group_handle, mid.* FROM sys.dm_db_missing_index_group_stats AS migs INNER JOIN sys.dm_db_missing_index_groups AS mig ON ( migs.group_handle = mig.index_group_handle ) INN

  • 1008 立方数 素数筛求约数 stl黑科技 二分 数论2022-07-24 22:32:40

    分析   首度。我开vector,开map 都是tle,改成数组和cnt 计数就对了。 //-------------------------代码---------------------------- #define int ll const int N = 1e5+10; int n,m,primes[N],cnt; bool st[N]; int qmi(int a,int b) { int res = 1; while(b) {

  • Q1_1、2、……、n-1、n、n、n+1、……2022-07-24 00:35:25

    Q1_1、2、……、n-1、n、n、n+1、…… 图床:blogimg/刷题记录/Q/ 刷题代码汇总:https://www.cnblogs.com/geaming/p/16428234.html 题目 存在一个序列1、2、……、n-1、n、n、n+1、……在这个序列中,只有一个数字有重复,找出重复的数字n 1.若这个序列是有序的,试找到重复数字n 2.若这个

  • "蔚来杯"2022牛客暑期多校训练营2 D Link with Game Glitch2022-07-23 23:00:08

    https://ac.nowcoder.com/acm/contest/33187/D 建边 \((b,d,c/a)\),那么会无限就说明有一个环边积大于 0 的环。 化积为和,对于边权都取 \(\log_2\),那么二分 \(w\),将每条边的边权变为 \(e[i].w-w\),那么变为是否有一个环边和大于 0,考虑并不是很好做,于是对于所有边都取相反数,那么就是

  • leetcode.33. 搜索旋转排序数组2022-07-23 22:31:29

    整数数组 nums 按升序排列,数组中的值 互不相同 。 在传递给函数之前,nums 在预先未知的某个下标 k(0 <= k < nums.length)上进行了 旋转,使数组变为 [nums[k], nums[k+1], ..., nums[n-1], nums[0], nums[1], ..., nums[k-1]](下标 从 0 开始 计数)。例如, [0,1,2,4,5,6,7] 在下标 3 处

  • 二分答案与三分答案2022-07-23 11:32:54

    当答案线性单调变化(也就是类一次函数),可以使用二分答案,取mid,若小于mid的满足,则大于mid的不满足或不更优,在题目中多表现为求:最大值最小,最小值最大。将求解转化为判定。 int middle(int l, int r)//二分答案 { int ans = 0; while (l <= r) { int mid = (l + r)

  • 【luogu P6656】【LOJ 173】【模板】Runs(字符串)(Lyndon 串)2022-07-23 09:33:56

    【模板】Runs 题目链接:luogu P6656 / LOJ 173 题目大意 给你一个字符串,要你求它所有的 Runs。 思路 本文也是参考着 command_block 大神的博客 进行学习的,只是书写一下自己的个人理解。 首先有一(亿)些关于 Lyndon 的知识建议先看看。 然后就开始讲了咯。 (文中许多东西建立在前面这

  • Apache Spark UI 命令注入(CVE-2022-33891)漏洞复现2022-07-23 09:31:26

    https://mp.weixin.qq.com/s?__biz=Mzg3MjAwMTk1OQ==&mid=2247483829&idx=1&sn=cc93b89537a6247ff2538589524519e2&chksm=cef4b97df983306be4953f7a3ad71cb53565a5f8ac6b13c36554af9fe877c06a53e87d30a700#rd

  • 【模板】三分2022-07-23 09:06:54

    难度10+大佬的讲解 对于单峰曲线,我们要用到三分。 double get(double x); double divide(double l,double r) { while(fabs(r-l) >= eps) { double mid = (l+r)/2.0; double lmid = mid-eps, rmid = mid+eps; if(get(lmid) < get(rmid)) l = mid; else r = mid;

  • [atARC144F]Arithmetic Sequence Nim2022-07-23 07:31:34

    记$sg(n)={\rm mex}\{sg(n-x)\mid x\in X\}$,考虑如何求$sg(n)$—— 将$m,a,n$均除以$\gcd(m,a)$(其中$n$向下取整),以下假设$m,a$互素 特判$a=0(m=1)$的情况,此时$sg(n)=n$,以下假设$a\in [1,m)$ 用$(i,j)$表示$im+ja$,则$sg(i,j)={\rm mex}\{sg(k,j-1)\mid k\le i\}$(注意$i,j$均可为负)

  • 7.22模拟赛2022-07-22 20:37:13

    目录7.22模拟赛甲国的军队 \((army)\)虚弱 \((weakness)\)萨鲁曼的半兽人 \((orc)\)序列 \((seq)\) 7.22模拟赛 甲国的军队 \((army)\) 简单的贪心,手玩一下就能得出结论 假设现在攻打两个城市 \(1\),\(2\) 先打 \(1\) 的代价为 \(b_1+b_2-(b_1-a_1)=a_1+b_2\) 先打 \(2\) 的代价为

  • 【C语言】一维数组倒排2022-07-22 02:32:46

      #include <stdio.h> int main() { int arr[] = {1, 2, 3, 4, 5}; int i; int len = sizeof(arr) / sizeof(arr[0]); int mid = len / 2; for (i = 0; i < mid; i++) { int tmp = arr[i]; arr[i] = arr[4 - i]; arr[

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

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

ICode9版权所有