@feiyangyang
2022-06-06T07:47:17.000000Z
字数 686
阅读 341
代码
#include<iostream>
#include<stdio.h>
#include<stdlib.h>
using namespace std;
int n,a[2003],b[2003],ans=-99999,m,t,c;
int max(int a,int b)
{
if(a>b) return a;
else return b;
}
int main()
{
// #################注意#########注意################
freopen("build.in","r",stdin);
// #################注意#########注意################
freopen("build.out","w",stdout);
// #################注意#########注意################
cin>>m>>n;
for(int i=1;i<=m;i++)
{
t=0;
for(int j=1;j<=n;j++)
{
scanf("%d",&a[j]);
b[a[j]]=j;
}
for(int j=1;j<=n-2;j++)
{
for(int k=1;k<=(n-1)/2;k++)
{
if(j+k+k<=n)
{
if(b[j]<b[j+k]&&b[j+k]<b[j+k+k])
{
t++;
}
else
{
if(b[j]>b[j+k]&&b[j+k]>b[j+k+k])
{
t++;
}
}
}
}
}
if(ans==t)
continue;
ans=max(ans,t);
if(ans==t)
{
c=i;
}
}
cout<<c<<" "<<ans;
}