912
  • 2024-11-11912. 排序数组
    题目链接本题使用的是快排解决。思路:「荷兰国旗」问题,具体思路跳转75.颜色分类代码classSolution{public:voidswap(vector<int>&nums,inti,intj){inttmp=nums[i];nums[i]=nums[j];nums[j]=tmp;}//[L,
  • 2024-10-15912.排序数组
    这一题我们要用归并排序的方法归并排序1)整体就是一个简单递归,左边排好序、右边排好序、让其整体有序2)让其整体有序的过程里用了排外序方法3)利用master公式来求解时间复杂度4)归并排序的实质时间复杂度O(N*logN),额外空间复杂度O(N)912.排序数组给你一个整数数组 nums,
  • 2024-02-14912.排序数组--插入排序
    1.题目介绍给你一个整数数组nums,请你将该数组升序排列。示例1:输入:nums=[5,2,3,1]输出:[1,2,3,5]示例2:输入:nums=[5,1,1,2,0,0]输出:[0,0,1,1,2,5]2.题解2.1插入排序思路主要思路就是创建一个有序区域和无序区域,不断从无序区域取一张出来顺序插入有序区域即可代
  • 2024-02-14912.排序数组--冒泡排序
    1.题目介绍给你一个整数数组nums,请你将该数组升序排列。示例1:输入:nums=[5,2,3,1]输出:[1,2,3,5]示例2:输入:nums=[5,1,1,2,0,0]输出:[0,0,1,1,2,5]2.题解2.1冒泡排序思路跟选择排序,固定一个i,后续者不断打擂台挑战不同,冒泡排序永远是两个邻接值比较,较大值不断向后冒
  • 2024-02-14912.排序数组--选择排序
    1.题目介绍给你一个整数数组nums,请你将该数组升序排列。示例1:输入:nums=[5,2,3,1]输出:[1,2,3,5]示例2:输入:nums=[5,1,1,2,0,0]输出:[0,0,1,1,2,5]2.题解2.1插入排序思路打擂台,每次确定第一名,第二名,第三名,依次往后代码#include<bits/stdc++.h>usingnamespace
  • 2024-01-26Codeforces Round 912 (Div
    AHalloumiBoxes题目大意给定一个数组A,我们可以对数组惊醒多次操作,操作如下:我们可以将数组中的某一段倒置,但是长度不能超过K,例如:反转子数组意味着选择两个索引i和j(其中1<=i<=j<=n)并将数组\[a_1,a_2,…,a_n\]改为\[a_1,a_2,…,a_{i−1},a_{j},a_{j−1},…
  • 2024-01-19912.排序数组--堆排序
    1.题目介绍给你一个整数数组nums,请你将该数组升序排列。示例1:输入:nums=[5,2,3,1]输出:[1,2,3,5]示例2:输入:nums=[5,1,1,2,0,0]输出:[0,0,1,1,2,5]2.题解2.1堆排序思路题目给了我们一个vector数组,要使用堆排序,我们首先要创建一个大根堆,再在这个大根堆的基础上对数
  • 2024-01-18912.排序数组--归并排序
    1.题目介绍给你一个整数数组nums,请你将该数组升序排列。示例1:输入:nums=[5,2,3,1]输出:[1,2,3,5]示例2:输入:nums=[5,1,1,2,0,0]输出:[0,0,1,1,2,5]2.题解2.1归并排序思路归并排序利用了分治的思想来对序列进行排序。对一个长为n的待排序的序列,我们将其分解成两个
  • 2023-12-20912. 排序数组---快速排序
    1.题目介绍给你一个整数数组 \(nums\),请你将该数组升序排列。示例1:输入:nums=[5,2,3,1]输出:[1,2,3,5]示例2:输入:nums=[5,1,1,2,0,0]输出:[0,0,1,1,2,5]提示:\(1<=nums.length<=5*10^{4}\)\(-5*10^{4}<=nums[i]<=5*10^{4}\)2.题解2.1随机化快速排
  • 2023-12-06Codeforces Round 912 (Div. 2)
    Preface这场题莫名很对我胃口,因为F是个究极套路题,还是我最拿手的2-SAT,想+写不到半小时就搞定了然后E的核心思想和上周末VP的一场省赛的题一样,因此看一眼就会了唯一抽象的是D2要用对超集的sosdp,由于之前没写过就不知道还能这么搞A.HalloumiBoxes当\(k\ge2\)时,我们总可以通
  • 2023-12-04Codeforces Round 912 (Div. 2) - sol
    CodeforcesRound912(Div.2)-solCodeforcesRound912(Div.2)一直是因为晚上打太晚了就没有打过cf,所以只能vp了。/kk四道题有关位运算——不好评价。A.HalloumiBoxes给出\(n\)个数\(a_1,\dots,a_n\),和一个数\(k\)。问是否能通过任意次翻转\(\lek\)的连
  • 2023-12-04Codeforces Round 912 (Div. 2)
    CodeforcesRound912(Div.2)什么位运算专场A.HalloumiBoxes#include<bits/stdc++.h>#defineintlonglong#defineendl'\n'usingnamespacestd;inta[110];intn,k;voidsolve(){cin>>n>>k;for(inti=0;i<n;i++)cin&
  • 2023-12-03Codeforces Round 912 (Div. 2)
    A.HalloumiBoxes题意:长度为n的数组,你可以逆转最多k长度,问你能不能是数组递增思路:如果k>=2那么每个数都可以两两交换,如果下表1的地方是1就一定可以,k=1的话单独讨论usingnamespacestd;voidsolve(){ intn,k; cin>>n>>k; vector<int>a(n+1); for(inti=1;i<=n;i++){
  • 2023-12-01Codeforces Round 912 (Div. 2)
    CodeforcesRound912(Div.2)基本概述最难受的一集。A题秒了。B题幸苦推了两个小时,最后也通过了pretest了,结果赛后被HACK。C题知道是DP,但觉得不好推状态转移方程,所以全心全意去做B题了。爆掉\(150\)分B.StORageroom我的思路其实就几乎是答案。之前几乎没怎