您的位置:首页 > 大数据 > 人工智能

Codeforces Round #394 (Div. 2) A. Dasha and Stairs 易错

2017-03-17 23:38 423 查看
A. Dasha and Stairs

time limit per test
2 seconds

memory limit per test
256 megabytes

input
standard input

output
standard output

On her way to programming school tiger Dasha faced her first test — a huge staircase!



The steps were numbered from one to infinity. As we know, tigers are very fond of all striped things, it is possible that it has something to do with their color. So on some interval of her way she calculated two values — the number of steps with even and odd
numbers.

You need to check whether there is an interval of steps from the l-th to the r-th (1 ≤ l ≤ r),
for which values that Dasha has found are correct.

Input

In the only line you are given two integers a, b (0 ≤ a, b ≤ 100) —
the number of even and odd steps, accordingly.

Output

In the only line print "YES", if the interval of steps described above exists, and "NO"
otherwise.

Examples

input
2 3


output
YES


input
3 1


output
NO


Note

In the first example one of suitable intervals is from 1 to 5.
The interval contains two even steps — 2 and 4,
and three odd: 1, 3 and 5.

Source

Codeforces Round #394 (Div. 2)

My Solution

易错

对于 0 0 这组数据要进行特殊的判断,比赛的时候用这组数据hack了十几个人,


当时这个有趣的题忘了记录下来了,现在补上,^_^

#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
typedef long long LL;
const int maxn = 1e6 + 8;

int main()
{
#ifdef LOCAL
freopen("a.txt", "r", stdin);
//freopen("a.out", "w", stdout);
int T = 4;
while(T--){
#endif // LOCAL
ios::sync_with_stdio(false); cin.tie(0);

LL a, b;
cin >> a >> b;
if(a == 0 && b == 0) cout << "NO" << endl;
else if(abs(a - b) <= 1) cout << "YES" << endl;
else cout << "NO" << endl;

#ifdef LOCAL
cout << endl;
}
#endif // LOCAL
return 0;
}

Thank you!
                                                                                                           
                                 ------from ProLights
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: