cf 1302a Nash equilibrium
题目大意: 类似于找鞍点,但是题目居然要把n和m换一下,神奇。
1 #include<bits/stdc++.h> 2 using namespace std; 3 int const N=1000+10; 4 int const inf=1e9+10; 5 int a[N][N],r[N][2],c[N][2],n,m,x,y; 6 int main(){ 7 scanf("%d%d",&m,&n); 8 for(int i=1;i<=m;i++) c[i][0]=c[i][1]=inf; 9 for(int i=1;i<=n;i++) 10 for(int j=1;j<=m;j++){ 11 scanf("%d",&a[i][j]); 12 if(a[i][j]>=r[i][0]) 13 r[i][1]=r[i][0],r[i][0]=a[i][j]; 14 else if(a[i][j]>=r[i][1]) 15 r[i][1]=a[i][j]; 16 if(a[i][j]<=c[j][0]) 17 c[j][1]=c[j][0],c[j][0]=a[i][j]; 18 else if(a[i][j]<=c[j][1]) 19 c[j][1]=a[i][j]; 20 } 21 for(int i=1;i<=n;i++) 22 for(int j=1;j<=m;j++){ 23 if(a[i][j]==r[i][0] && r[i][0]!=r[i][1] && a[i][j]==c[j][0] && c[j][0]!=c[j][1]) { 24 x=i,y=j; 25 printf("%d %d\n",x,y); 26 return 0; 27 } 28 } 29 printf("0 0\n"); 30 return 0; 31 }