Why Did the Cow Cross the Road III (P)
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 32 M,其他语言64 M
64bit IO Format: %lld

题目描述

Farmer John is continuing to ponder the issue of cows crossing the road through his farm, introduced in the preceding two problems. He realizes now that the threshold for friendliness is a bit more subtle than he previously considered -- breeds a and are now friendly if |a−b|≤K, and unfriendly otherwise.
Given the orderings of fields on either side of the road through FJ's farm, please count the number of unfriendly crossing pairs of breeds, where a crossing pair of breeds is defined as in the preceding problems.

输入描述:

The first line of input contains N (1≤N≤100,000) and K (0≤K<N). The next N lines describe the order, by breed ID, of fields on one side of the road; each breed ID is an integer in the range 1…N. The last N lines describe the order, by breed ID, of the fields on the other side of the road. Each breed ID appears exactly once in each ordering.

输出描述:

Please output the number of unfriendly crossing pairs of breeds.
示例1

输入

复制
4 1
4
3
2
1
1
4
2
3

输出

复制
2

说明

In this example, breeds 1 and 4 are unfriendly and crossing, as are breeds 1 and 3.