社区讨论

晕,手写了一个冒泡,为什么错了啊

P1327数列排序参与者 5已保存回复 4

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
4 条
当前快照
1 份
快照标识符
@mi6i4fcn
此快照首次捕获于
2025/11/20 05:15
4 个月前
此快照最后确认于
2025/11/20 05:15
4 个月前
查看原帖
CPP
#include <bits/stdc++.h>
using namespace std;
int n,ans,a[100001],b[100001];
int main(){
    scanf ("%d",&n);
    for (int i=0;i<n;i++)scanf ("%d",&a[i]),b[i]=a[i];
    sort(a,a+n);
    for (int i=0;i<n;i++)
    if (b[i]!=a[i])ans++,a[i]^=b[i]^=a[i]^=b[i];
    printf ("%d",ans);
}

回复

4 条回复,欢迎继续交流。

正在加载回复...