问题标题: 酷町堂:4011 怎么错了啊

0
0
已解决
李云昊
李云昊
中级守护
中级守护

#include <iostream>
using namespace std;
int main()
{
 int n,a[100001],s=0;
 cin>>n;
 for(int i=1;i<=n;i++)
 {
 cin>>a[i];
 }
 for(int i=1;i<=n-1;i++)
 {
  int x=0;
 for(int j=1;j<=n-i;j++)
 {
 if(a[j]>a[j+1])
 {
 swap(a[j],a[j+1]);
 x=1;

 }
 }
 if(x==0)
 break;
    s=s+1;
 }
 cout<<s;
}


0
已采纳
毛润宇
毛润宇
新手天翼
新手天翼

你这个s不对啊,连样例都过不了,我倒是有一种方法,将没优化的冒泡排一遍,再将优化过的排一遍,注意计数,最后一相减不就行了?

我要回答