列表

详情


NC200141. 走楼梯

描述


一天,hh在上楼时记得他走过了个编号为奇数的台阶和个编号为偶数的台阶,但是他怀疑他的记忆出现了偏差。现在需要你验证是否存在两个台阶,它们之间包含了个编号为奇数的台阶和个编号为偶数的台阶。hh非常的懒不想思考这个问题,你能帮他解决吗?

输入描述

第一行是一个整数, 代表有组数据。

接下来T行每行两个整数 ,一个是编号为奇数的台阶个数,另一个是编号为偶数的台阶个数。

输出描述

如果有a个编号为奇数的台阶和b个编号为偶数的台阶则输出"YES",否则输出"NO"。

示例1

输入:

1
2 3

输出:

YES

原站题解

上次编辑到这里,代码来自缓存 点击恢复默认模板

Python3 解法, 执行用时: 25ms, 内存消耗: 2832K, 提交时间: 2021-06-15 15:27:40

t=int(input())
while t:
    try:
        a,b=map(int,input().split())
        if abs(a-b)<=1:
            print("YES")
        else:
            print("NO")
        t-=1
    except:
        break

C(clang 3.9) 解法, 执行用时: 2ms, 内存消耗: 464K, 提交时间: 2019-12-08 15:21:08

#include"stdio.h"
int main()
{
	int T,a,b;
	scanf("%d",&T);
	for(;T;T--)
	{
		scanf("%d%d",&a,&b);
		if(a==b-1||a==b||a==b+1)printf("YES\n");
		else printf("NO\n");
	}
	return 0; 
}

C++11(clang++ 3.9) 解法, 执行用时: 4ms, 内存消耗: 508K, 提交时间: 2019-12-08 14:15:48

#include"stdio.h"
int main()
{
int a,b,i,t;
scanf("%d",&t);
for(i=1;i<=t;i++)
{
scanf("%d%d",&a,&b);
if((a-b<=1)&&(b-a)<=1)
	printf("YES\n");
else
	printf("NO\n");

}
return 0;

}

Pascal(fpc 3.0.2) 解法, 执行用时: 1ms, 内存消耗: 256K, 提交时间: 2019-12-08 13:23:12

program b;
 var 
  a,b,t,i:integer;
begin
  read(t);
  for i:=1 to t do
  begin
    read(a,b);
    if abs(a-b)<=1 then writeln('YES')
    else writeln('NO');
  end;
end.

上一题