結果
問題 |
No.325 マンハッタン距離2
|
ユーザー |
![]() |
提出日時 | 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 |
ソースコード
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