This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include<cstdio>
#include<algorithm>
int a[2222][2222];
int main()
{
	int i,j,n,r=0;
	scanf("%d",&n);
    for(i=0;i<n;i++)for(j=0;j<n;j++)scanf("%d",&a[i][j]);
    i=j=0;
    while(i!=n-1||j!=n-1)
	{
		if(i==n-1)
		{
			r+=std::max(a[i][j+1]-a[i][j]+1,0);
			j++;
		}
		else if(j==n-1)
		{
			r+=std::max(a[i+1][j]-a[i][j]+1,0);
			i++;
		}
		else
		{
			if(std::max(a[i][j+1]-a[i][j]+1,0)<std::max(a[i+1][j]-a[i][j]+1,0))
			{
				r+=std::max(a[i][j+1]-a[i][j]+1,0);
				j++;
			}
			else if(std::max(a[i][j+1]-a[i][j]+1,0)>std::max(a[i+1][j]-a[i][j]+1,0))
			{
				r+=std::max(a[i+1][j]-a[i][j]+1,0);
				i++;
			}
			else if(a[i][j+1]>a[i+1][j])
			{
				r+=std::max(a[i][j+1]-a[i][j]+1,0);
				j++;
			}
			else
			{
				r+=std::max(a[i+1][j]-a[i][j]+1,0);
				i++;
			}
		}
		printf("%d %d %d\n",i,j,r);
	}
	printf("%d",r);
}
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... | 
| # | Verdict  | Execution time | Memory | Grader output | 
|---|
| Fetching results... |