//PascalABC.NET версия 3.2, сборка 1417
//Если программа не запускается, то обновите версию
begin
var n := 2003;
var m := 2016;
var a := MatrGen(n, m, (i, j)-> i + 1 + n * j);
var b := MatrGen(n, m, (i, j)-> j + 1 + m * i);
var k := 0;
for var i := a.GetLowerBound(0) to a.GetUpperBound(0) do
for var j := a.GetLowerBound(1) to a.GetUpperBound(1) do
if a[i, j] = b[i, j] then begin
k += 1;
Println(i + 1, j + 1, a[i, j]);
end;
// a.Println();
// writeln;
// b.Println();
writeln(k);
end.
Вывод
1 1 1
156 155 310620
311 309 621239
466 463 931858
621 617 1242477
776 771 1553096
931 925 1863715
1086 1079 2174334
1241 1233 2484953
1396 1387 2795572
1551 1541 3106191
1706 1695 3416810
1861 1849 3727429
2016 2003 4038048
14
Ответ 14