# Infinite Sequence

47人阅读 评论(0)

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 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 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

#include<iostream>
using namespace std;
int main(void)
{
int a, b, c;
cin>>a>>b>>c;
if(c == 0)
{
if(a == b)
cout<<"YES";
else
cout<<"NO";

}
else
{
if(((b-a)%c == 0) && (((b-a)>= 0 && c > 0)||((b-a)<= 0 && c < 0)))
cout<<"YES";
else
cout<<"NO";
}

return 0;
}

#include<stdio.h>
#include<iostream>
using namespace std;
int main(void)
{
long long a, b, c;
cin>>a>>b>>c;
if(c == 0 && a == b)
{
printf("YES\n");
}
else if(c == 0 && a != b)
{
printf("NO\n");
}
else
{
long long t;
t = (b-a)%c;
//cout<<t;
if(t == 0)
{
if((a > b && c < 0) || (a < b && c > 0 ))
{
printf("YES");
}
else
{
printf("NO");
}
}
else
{
printf("NO");
}
}
return 0;
}

0
0

* 以上用户言论只代表其个人观点，不代表CSDN网站的观点或立场
个人资料
• 访问：339次
• 积分：44
• 等级：
• 排名：千里之外
• 原创：4篇
• 转载：1篇
• 译文：0篇
• 评论：0条
文章分类
阅读排行
评论排行