結果

問題 No.325 マンハッタン距離2
ユーザー Tawara
提出日時 2015-12-19 14:46:23
言語 Python2
(2.7.18)
結果
AC  
実行時間 12 ms / 1,000 ms
コード長 439 bytes
コンパイル時間 697 ms
コンパイル使用メモリ 6,944 KB
実行使用メモリ 6,944 KB
最終ジャッジ日時 2024-09-16 16:04:57
合計ジャッジ時間 2,139 ms
ジャッジサーバーID
(参考情報)
judge2 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 3
other AC * 24
権限があれば一括ダウンロードができます

ソースコード

diff #

f=lambda n:n*(n+1)/2;p,q,r,s,d=map(int,raw_input().split());a=0
if p>=0:x=[(p,r)]
elif r<=0:x=[(-r,-p)]
else:x=[(1,-p),(0,r)]
if q>=0:y=[(q,s)]
elif s<=0:y=[(-s,-q)]
else:y=[(1,-q),(0,s)]
for p,r in x:
	for q,s in y:
		if p+q>d:continue
		if r+s<=d:a+=(r-p+1)*(s-q+1);continue
 		if r+q<d:
			if p+s<d:a+=(r-p+1)*(s-q+1)-f(r-d+s)
			else:e=r-p+1;a+=f(e)+e*(d-r-q)
		else:
			if p+s<d:e=s-q+1;a+=f(e)+e*(d-s-p)
			else:a+=f(d-q-p+1)
print a
0