2 solutions

  • 1
    @ 2024-2-1 9:55:09
    #include<bits/stdc++.h>
    using namespace std;
    const int N=60;
    struct stu
    {
    int h,k;
    };
    stu a[N];
    int main()
    {
    int n;
    cin>>n;
    for(int i=1;i<=n;i++)
    {
    cin>>a[i].h;
    }
    int s=0;
    for(int i=1;i<=n;i++) //冒泡排序
    {
    int cnt=0;
    for(int j=1;j<=n-i;j++)
    {
    if(a[j].h>a[j+1].h)
    {
    cnt++;
    a[j].k++; //累加
    a[j+1].k++; //累加
    s+=a[j].k+a[j+1].k; //求和
    swap(a[j],a[j+1]);    //交换
    }
    }
    if(cnt==0)
    {
    break;
    }
    }
    cout<<s;
    return 0;
    }
    
    
    
    
    • 0
      @ 2024-2-1 9:54:34
      
      

      #include<bits/stdc++.h> using namespace std; const int N=60; struct stu { int h,k; }; stu a[N]; int main() { int n; cin>>n; for(int i=1;i<=n;i++) { cin>>a[i].h; } int s=0; for(int i=1;i<=n;i++) //冒泡排序 { int cnt=0; for(int j=1;j<=n-i;j++) { if(a[j].h>a[j+1].h) { cnt++; a[j].k++; //累加 a[j+1].k++; //累加 s+=a[j].k+a[j+1].k; //求和 swap(a[j],a[j+1]); //交换 } } if(cnt==0) { break; } } cout<<s; return 0; }

      
      
      • 1

      Information

      ID
      642
      Time
      1000ms
      Memory
      128MiB
      Difficulty
      3
      Tags
      # Submissions
      61
      Accepted
      22
      Uploaded By