水题
#include <iostream>
#include <cstring>
#include <cmath>
using namespace std;
int Ki[23][23];
int value[23][23];
int N,M;
int cal_val(int x,int y)
{
if(x*y < 0)
return abs(y);
else if(x*y > 0)
return -abs(y);
else
return 0;
}
int main()
{
while(cin>>N>>M)
{
if(N == 0 && M == 0)
break;
memset(value,0,sizeof(value));
memset(Ki,0,sizeof(Ki));
for(int i = 1; i <= N; i++)
{
for(int j = 1; j <= M; j++)
{
cin>>Ki[i][j];
value[i][j] = 0;
}
}
for(int i = 1; i <= N; i++)
{
for(int j = 1; j <= M; j++)
{
value[i][j] += cal_val(Ki[i][j],Ki[i-1][j]);
value[i][j] += cal_val(Ki[i][j],Ki[i+1][j]);
value[i][j] += cal_val(Ki[i][j],Ki[i][j-1]);
value[i][j] += cal_val(Ki[i][j],Ki[i][j+1]);
}
}
int mx = 1,my = 1;
int max = value[1][1];
for(int i = 1; i <= N; i++)
{
for(int j = 1; j <= M;j++)
{
if(value[i][j] > max)
{
max = value[i][j];
mx = i;
my = j;
}
}
}
cout<<mx<<" "<<my<<" "<<value[mx][my]<<endl;
}
return 0;
}
hdu 4500 腾讯马拉松第一题
最新推荐文章于 2016-11-04 17:20:49 发布