CodeForces 675 A Infinite Sequence

来源:互联网 发布:吴敬中 知乎 编辑:程序博客网 时间:2024/04/20 06:37
F - Infinite Sequence
Time Limit:1000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u
Submit Status

Description

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 integerb 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).

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
题意:给出等差数列的首项a,相邻两项的差c,问b是否在该数列中,
思路:数学题,分情况讨论一下。
#include<stdio.h>#include<string.h>#include<algorithm>using namespace std;int main(){int a,b,c,i,j,k,sum;scanf("%d%d%d",&a,&b,&c);if(c==0){if(a==b)printf("YES\n");elseprintf("NO\n");}else  if(c>0){if(b<a)printf("NO\n");else if((b-a)%c==0)printf("YES\n");elseprintf("NO\n");}else{c=-c;if(b>a)printf("NO\n");else if((a-b)%c==0)printf("YES\n");elseprintf("NO\n"); }return 0;}


0 0
原创粉丝点击