F

来源:互联网 发布:java jar命令 编辑:程序博客网 时间:2024/05/16 06:58

F - Infinite Sequence

 CodeForces - 675A 

Vasya likes everything infinite. Now he is studying the properties of a sequence s, such that its first element is equal to a (s1 = a), and the difference between any two neighbouring elements is equal to c (si - si - 1 = c). In particular, Vasya wonders if his favourite integer b appears in this sequence, that is, there exists a positive integer i, such that si = b. Of course, you are the person he asks for a help.

Input

The first line of the input contain three integers ab and c ( - 109 ≤ a, b, c ≤ 109) — the first element of the sequence, Vasya's favorite number and the difference between any two neighbouring elements of the sequence, respectively.

Output

If b appears in the sequence s print "YES" (without quotes), otherwise print "NO" (without quotes).

Example
Input
1 7 3
Output
YES
Input
10 10 0
Output
YES
Input
1 -4 5
Output
NO
Input
0 60 50
Output
NO
Note

In the first sample, the sequence starts from integers 147, so 7 is its element.

In the second sample, the favorite integer of Vasya is equal to the first element of the sequence.

In the third sample all elements of the sequence are greater than Vasya's favorite integer.

In the fourth sample, the sequence starts from 050100, and all the following elements are greater than Vasya's favorite integer.


题目链接:https://cn.vjudge.net/contest/161621#problem/F


模拟水题,给你首项和公差,让你判断给出你的这个数在不在序列中,直接考虑好所有情况模拟上就好了。

代码:

#include <bits/stdc++.h>using namespace std;int main(){    int a,b,c;    while(~scanf("%d%d%d",&a,&b,&c)){        if(c==0){            if(a==b)puts("YES");            else puts("NO");            continue;        }        int d=(b-a);        if(d%c==0&&d/c>=0)puts("YES");        else puts("NO");    }    return 0;}


0 0
原创粉丝点击