首页 > 其他分享 >CF1768B 题解

CF1768B 题解

时间:2023-01-19 19:11:34浏览次数:53  
标签:int 题解 CF1768B long 序列 排序

首先我们思考什么数是不用排序的。

显然,序列中一个由 \(1\) 开始,每次递增 \(1\) 的子序列是不用排序的。

为什么呢?

因为我们把其他数按从大到小排好后这个子序列刚好构成排好序后的数列的前缀。

因为当我们把除此以外的其他数字选出来后,这些数字构成排序后的数组的前缀,其他数字被后置到数组末尾构成后缀。

然后,假定有 \(m\) 个数不需要排序。那么每次可以排序 \(k\) 个数,故答案为 \((n-m)/k\) (需要上取整)。

#include<bits/stdc++.h>
//#define int long long
//#define lowbit(x) (x&-(x))
using namespace std;
const int maxn = 1e5+10;
int t;
int a[maxn];
void work(){
	int ans=0;
	stack<int> op;
	int n,k;
	cin>>n>>k;
	for(int i=1;i<=n;i++){
		cin>>a[i];
	}
	int now=0;
	for(int i=1;i<=n;i++){
		if(a[i]==now+1){
			now++;
		}
	}

	cout<<ceil((n-now)*1.0/k)<<'\n';
}
int main(){
ios::sync_with_stdio(0);
cin.tie(0);
cout.tie(0);
int t;
cin>>t;
while(t--){
	work();
}

return 0;
}

标签:int,题解,CF1768B,long,序列,排序
From: https://www.cnblogs.com/chifan-duck/p/17061987.html

相关文章

  • 洛谷P4983 忘情 题解报告
    题目地址题意:把正整数序列分隔为m个区间,若单个区间的元素之和为X,则其贡献为\((X+1)^2\)。求所有区间的贡献之和的最小值。分析:wqs二分+斜率优化dp。用单调队列发可......
  • abc273G题解
    \(dp[i][j]\):考虑到前i行,有j个2的方案数。设有k个1(计算可得)。\(a_{i+1}=0\):\(dp[i][j]\todp[i+1][j]\)\(a_{i+1}=1\):\(dp[i][j]\times(n-j-k)\todp[......
  • win10下python3.9的代理报错问题解决(附web3的polygon爬虫源码)
    背景因为工作中经常需要代理访问,而开了代理,request就会报错SSLError,如下:requests.exceptions.SSLError:HTTPSConnectionPool(host='test-admin.xxx.cn',port=443):Ma......
  • C# 使用SQLDMO备份数据库时不显示进度的问题解决方法
    在使用SQLDMO备份数据库的过程中,参考了网上的例子,但是进度条却不显示,每次返回的都是0,解决方法是使用全局变量,每次做个累加就可以了。stringServerName="";......
  • Nextcloud安装扩展记录以及问题解决方法
    1、Nextcloud支持显示视频缩略图-23-01-19安装yasm(http://www.tortall.net/projects/yasm/releases/)wgethttp://www.tortall.net/projects/yasm/releases/yasm-1.3.0.......
  • Loj 507 接竹竿 题解
    Loj链接:接竹竿${\scr\color{SkyBlue}{\text{Solution}}}$题目大意:给定一个数组,每次加入一种颜色的数,可以取走与它颜色相同的两个数之间的所有数,问最后取走的所有数......
  • 2023牛客寒假算法基础集训营1-大部分题解
    比赛概况solve:ACDHKLMrank:374/3835dirt:630补题情况EFG题解E:鸡算几何题目链接:https://ac.nowcoder.com/acm/contest/46800/E思路:简单的计算几何叉积运算。我......
  • AT_abc139f 题解
    我们注意向量加法的几何意义。将多个向量向加时,最优的情况是所有边的极坐标单调。但是有一种特殊情况,就是从极角最大的到极角最小的。因此把所有向量极角排序,在做一些处......
  • luogu P1452 题解
    管理备注:虽然此题解为乱搞,但是本乱搞是非常有意义的经典乱搞,故保留在题解区中供学习与参考。我们充分发扬人类智慧:将所有点全部绕原点旋转同一个角度,然后按\(x\)坐标......
  • luogu P8207 题解
    在暴力建边的情况下可以kruskal求生成树。但是这样是\(O(n^2)\)的。因为\(lcm(x,y)=x\timesy/\gcd(x,y)\)。所以\(\gcd(x,y)\)越大我们的答案越优。但是......