更正经题解|新年排列
2024-04-11 16:44:16
发布于:广东
17阅读
0回复
0点赞
思维水题。。
全题用时最短方法:
证据:
考虑一下两个移动能不能互相帮助就行了
AC代码:
#include <iostream>
#include <cmath>
#include <algorithm>
using namespace std;
int a[100005];
int main() {
int n,k;
scanf("%d %d",&n,&k);
for (int i=1;i<=n;i++) {
scanf("%d",&a[i]);
}
int cnt=1,i=1,num=2;
for (;i<=n;i++) {
if (a[i]==1) break;
}
for (++i;i<=n;i++) {
if (a[i]==num) {
cnt++;
num++;
}
}
int len=n-cnt;
if (len%k!=0) {
printf("%d",len/k+1);
}else {
printf("%d",len/k);
}
return 0;
}
全部评论 1
该名为:复仇者_SJZ08
2024-04-12 来自 浙江
0我不小心点错加入了,把我踢出你们团队
2024-04-12 来自 广东
0
有帮助,赞一个