Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)
Total Submission(s): 372    Accepted Submission(s): 186


Problem Description
Dylans is given ]
 

 

Input
In the first line there is two numbers 1
 

 

Output
For each query,print the numbers of "inversions”
 

 

Sample Input
3 2
3 2 1
1 2
1 3
 
Sample Output
1 3
Hint
You shouldn't print any space in each end of the line in the hack data.
 

 

Source
/**
          题意:给出一个数列,求某个区间的逆序数对有多少个
          做法:因为N 最大1000 所以 枚举,还以为是笼统的归并排序
**/
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <algorithm>
#include <cmath>
#define maxn 1010
using namespace std;
int dp[maxn][maxn];
int mmap[maxn];
int main()
{
//#ifndef ONLINE_JUDGE
//          freopen("in.txt","r",stdin);
//#endif // ONLINE_JUDGE
          int n,m;
          while(~scanf("%d %d",&n,&m))
          {
                    for(int i=1;i<=n;i++)
                    {
                              scanf("%d",&mmap[i]);
                    }
                    memset(dp,0,sizeof(dp));
                    for(int i=1;i<=n;i++)
                    {
                              for(int j=i+1;j<=n;j++)
                              {
                                        if(mmap[i] > mmap[j])
                                        dp[i][j] ++;
                              }
                              for(int j=1;j<=n;j++)
                              {
                                        dp[i][j] += dp[i][j-1];
                              }
                    }
                    for(int i=n-1;i>0;i--)        ///枚举i~j中任意一个区间的逆序数对
                    {
                              for(int j=i+1;j<=n;j++) 
                              {
                                        dp[i][j] += dp[i+1][j];
                              }
                    }
                    while(m--)
                    {
                              int u,v;
                              scanf("%d %d",&u,&v);
                              printf("%d\n",dp[u][v]);
                    }
          }
          return 0;
}

 

 

相关文章:

  • 2021-08-04
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-07-30
  • 2021-08-09
  • 2021-06-07
  • 2022-01-15
  • 2021-09-11
  • 2022-12-23
  • 2021-06-25
相关资源
相似解决方案