1023B - Pair of Toys

B. Pair of Toys

time limit per test

1 second

memory limit per test

256 megabytes

input

standard input

output

standard output

Tanechka is shopping in the toy shop. There are exactly nn toys in the shop for sale, the cost of the ii-th toy is ii burles. She wants to choose two toys in such a way that their total cost is kkburles. How many ways to do that does she have?

Each toy appears in the shop exactly once. Pairs (a,b)(a,b) and (b,a)(b,a) are considered equal. Pairs (a,b)(a,b), where a=ba=b, are not allowed.

Input

The first line of the input contains two integers nn, kk (1≤n,k≤10141≤n,k≤1014) — the number of toys and the expected total cost of the pair of toys.

Output

Print the number of ways to choose the pair of toys satisfying the condition above. Print 0, if Tanechka can choose no pair of toys in such a way that their total cost is kk burles.

Examples

input

Copy

8 5

output

Copy

2

input

Copy

8 15

output

Copy

1

input

Copy

7 20

output

Copy

0

input

Copy

1000000000000 1000000000001

output

Copy

500000000000

Note

In the first example Tanechka can choose the pair of toys (1,41,4) or the pair of toys (2,32,3).

In the second example Tanechka can choose only the pair of toys (7,87,8).

In the third example choosing any pair of toys will lead to the total cost less than 2020. So the answer is 0.

In the fourth example she can choose the following pairs: (1,1000000000000)(1,1000000000000), (2,999999999999)(2,999999999999), (3,999999999998)(3,999999999998), ..., (500000000000,500000000001)(500000000000,500000000001). The number of such pairs is exactly 500000000000500000000000.

题意:有n个玩具,只买两个,让花费等于k.

题解:数论  规律题   一看这种题都会找规律,多写几组数据看规律,...如果n>=k,ans=(k-1)/2,如果(n*2>k) ans=n-k/2,其余为0 

c++:

#include<bits/stdc++.h>
using namespace std;
int main()
{
    long long n,k;
    cin>>n>>k;
    if(n>=k) cout<<(k-1)/2<<endl;
     else if (n*2>k) cout<<n-k/2<<endl;
     else cout<<0<<endl;
    return 0;
}

Python:

n,k=map(int,input().split())
if n>=k: print((k-1)//2)
elif n*2>k: print(n-k//2)
else: print(0)

猜你喜欢

转载自blog.csdn.net/memory_qianxiao/article/details/81806545