Problem:
Score: 100 points

Problem Statement

E869120 has A 1-yen coins and infinitely many 500-yen coins.

Determine if he can pay exactly N yen using only these coins.

Constraints

N is an integer between 1 and 10000 (inclusive).

A is an integer between 0 and 1000 (inclusive).

Input

Input is given from Standard Input in the following format:

N
A

Output

If E869120 can pay exactly N yen using only his 1-yen and 500-yen coins, print Yes; otherwise, print No.

Sample Input 1

2018
218

Sample Output 1

Yes

We can pay 2018 yen with four 500-yen coins and 18 1-yen coins, so the answer is Yes.

Sample Input 2

2763
0

Sample Output 2

No

When we have no 1-yen coins, we can only pay a multiple of 500 yen using only 500-yen coins. Since 2763 is not a multiple of 500, we cannot pay this amount.

Sample Input 3

37
514

Sample Output 3

Yes

Solution in C (GCC 5.4.1) (judge verdict: Accepted)

#include <stdio.h>
int main()
{

   /* int a,b,x,d,i,e,temp,k,s=0,p;

    scanf("%d %d",&a,&b);
    int l[a];
    for(e=0;e<a;e++){
        scanf("%d",&l);
    }
    for(i=0;i<a-1;i++){
        for(d=0;d<a-i;d++){
            if(l[d]<l[d+1]){
                temp=l[d];
                l[d]=l[d+1];
                l[d+1]=temp;
                temp=0;
            }
        }
    }

    for(p=0;p<a;p++){
        printf("%d\n",l[p]);
    }*/
    int a,b,c;
    scanf("%d",&a);
    scanf("%d",&b);
    c=a%500;
    if(c<=b){
        printf("Yes");
    }else{
     printf("No");
    }
}