الگوریتمی - نامحلول


  • محدودیت زمان: ۴ ثانیه
  • محدودیت حافظه: ۲۵۶ مگابایت
  • سوال الگوریتمی

یک گراف وزن‌دار بدون جهت داریم که می‌توانیم آن را به صورت یک شبکه‌ی جدولی هم در نظر بگیریم که دارای nn سطر و mm ستون است.مجموعه‌ی رئوس گراف را به شکل زیر تعریف می‌کنیم: {(i,j)1in,1jm}\left\{(i,j)|1\le i \le n,1 \le j \le m\right\} بین دو راس (i1,j1)(i_1,j_1) و (i2,j2)(i_2,j_2) یال وجود دارد اگر و تنها اگر فاصله‌ی منهتنی آن ها برابر 11 باشد. (فاصله‌ی منهتنی دو خانه را برابر مجموع فاصله‌های افقی و عمودی خانه‌های جدول تعریف می‌کنیم.)

خستگی یک مسیر در گراف برابر مجموع اعدادی است که روی یال‌های آن مسیر نوشته‌شده‌است.(اعداد روی یال‌ها در ورودی آمده است.)

شما باید به ازای هر خانه از جدول n×mn \times m (به عبارتی هر راس گراف) پاسخ سوال زیر را مشخص کنید:

حداقل میزان خستگی اگر بخواهیم با شروع از این خانه‌ی جدول ، روی یال‌ها حرکت کنیم (حرکت روی یک یال تکراری مجاز است) و بعد از دقیقا kk مرحله به خانه‌ی شروع بازگردیم چه قدر است؟

ورودی🔗

خط اول ورودی به ترتیب، شامل سه عدد n و m و kاست.

n خط بعدی در هر خط m-1 عدد می‌آیند که jj امین عدد از ii امین خط عدد روی یال بین دو خانه‌ی (i,j)(i, j) و (i,j+1) (i, j+1) را مشخص می‌کند.

n-1 خط بعدی در هر خط m عدد می‌آیند که jj امین عدد از ii امین خط عدد روی یال بین دو خانه‌ی (i,j)(i, j) و (i+1,j)(i+1, j) را مشخص می‌کند.

n,m500n,m \le 500 k20k \le 20

خروجی🔗

یک جدول n×mn\times m که در خانه‌ی i,ji,j آن جواب سوال برای خانه‌ی (i,j)(i, j) باشد و اگر نمی‌توانستیم بعد از دقیقا kk حرکت به خانه‌ی اولیه‌ بازگردیم -1 را چاپ کنید.

مثال🔗

ورودی نمونه ۱🔗

4 4 10
5 5 5
5 5 5
5 5 5
5 5 5
5 5 5 5
5 5 5 5
5 5 5 5
Plain text

خروجی نمونه ۱🔗

50 50 50 50
50 50 50 50
50 50 50 50
50 50 50 50
Plain text

ورودی نمونه ۲🔗

4 4 1
5 5 5
5 5 5
5 5 5
5 5 5
5 5 5 5
5 5 5 5
5 5 5 5
Plain text

خروجی نمونه ۲🔗

-1 -1 -1 -1
-1 -1 -1 -1
-1 -1 -1 -1
-1 -1 -1 -1
Plain text