CodeForces - 675A Infinite Sequence (模拟)水

来源:互联网 发布:算法统宗阅读 编辑:程序博客网 时间:2024/04/26 19:28
CodeForces - 675A
Infinite Sequence
Time Limit:                                                        1000MS                        Memory Limit:                                                        262144KB                        64bit IO Format:                            %I64d & %I64u                       

SubmitStatus

Description

Vasya likes everything infinite. Now he is studying the properties of a sequences, such that its first element is equal toa (s1 = a), and the difference between any two neighbouring elements is equal toc (si - si - 1 = c). In particular, Vasya wonders if his favourite integer b appears in this sequence, that is, there exists a positive integeri, 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 a,b 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).

Sample Input

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

Sample Output

Hint

Source

Codeforces Round #353 (Div. 2)
//题意:输入a,b,c;
a表示序列的第一个元素的值s1,b是要找的元素的值,c是s(i)-s(i-1)的值,问b是否在这个序列中?
//思路:
直接模拟就行了
#include<stdio.h>#include<string.h>#include<algorithm>#include<iostream>using namespace std;int main(){int a,b,c;while(scanf("%d%d%d",&a,&b,&c)!=EOF){int d=b-a;if(d==0){printf("YES\n");}else if(d>0){if(c>0){if(d%c==0)printf("YES\n");elseprintf("NO\n");}elseprintf("NO\n");}else{if(c<0){if(d%c==0)printf("YES\n");elseprintf("NO\n");}elseprintf("NO\n");}}return 0;}

 
0 0