首页 > 试题广场 >

Number Steps

[编程题]Number Steps
  • 热度指数:5139 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 64M,其他语言128M
  • 算法知识视频讲解
Starting from point (0,0) on a plane, we have written all non-negative integers 0,1,2, ... as shown in the figure. For example, 1, 2, and 3 has been written at points (1,1), (2,0), and (3, 1) respectively and this pattern has continued.
You are to write a program that reads the coordinates of a point (x, y), and writes the number (if any) that has been written at that point. (x, y) coordinates in the input are in the range 0...5000.

输入描述:
each line, there is x, and y representing the coordinates (x, y) of a point.


输出描述:
For each point in the input, write the number written at that point or write No Number if there is none.
示例1

输入

3
4 2
6 6
3 4

输出

6
12
No Number
#n = int(input())
自测数据和提交数据不一样
a = 2
b = 0
c1 = 0
c = 0
#for  i in range(n):
x, y = list(map(int, input().split()))
if x == 0 and y == 0:
    print(0)
elif x == 2 and y == 0:
    print(2)
    
elif x-2 == y:
    while y:
        y -= 1
        c += 1
        if c % 2 != 0:
            a += 1
        else:
            a += 3
    print(a)
elif x == y:
        # y -= 1
    while y:
        y -= 1
        c1 += 1
        if c1 % 2 != 0:
            b += 1
        else:
            b += 3
    print(b)
else:
    print("No Number")
    

发表于 2025-02-17 00:16:34 回复(0)