CSES - Number Spiral | Xoắn ốc số

Xem PDF

Điểm: 1000 Thời gian: 1.0s Bộ nhớ: 512M Input: bàn phím Output: màn hình

Một xoắn ốc số là một lưới vô hạn có ô vuông trái trên chứa số \(1\). Dưới đây là năm lớp đầu tiên của xoắn ốc:

Nhiệm vụ của bạn là tìm ra số trong hàng \(y\) và cột \(x\).

Input

  • Dòng đầu chứa một số nguyên \(t\): số lượng test.
  • Tiếp theo là \(t\) dòng, mỗi dòng chứa hai số nguyên \(y\)\(x\).

Output

  • Với mỗi test, in ra số ở hàng \(y\) và cột \(x\).

Constraints

  • \(1 \le t \le 10^5\)
  • \(1 \le y,x \le 10^9\)

Example

Sample input

3
2 3
1 1
4 2

Sample output

8
1
15


Bình luận


  • 0
    quanle2013    8:35 p.m. 24 Tháng 5, 2024

    chỉ bài này với


    • 1
      thieukhangduong    8:17 p.m. 11 Tháng 11, 2024
      n = int(input())
          for _ in range(n):
              y, x = (lambda : map(int, input().split()))()
              if x == y: print(x**2 + 1 - x)
              if y > x:
                  if y % 2 == 0: print(y**2 - x + 1)
                  else: print((y - 1)**2 + x)
              if x > y:
                  if x % 2 == 1: print(x**2 - y + 1)
                  else: print((x - 1)**2 + y)
      

      • 0
        Haidepzai    10:07 p.m. 31 Tháng 7, 2024

        chỉ cho đâu nhá


        • -1
          anhphampeter    4:01 p.m. 25 Tháng 5, 2024

          quá dễ để làm
          chỉ cần def là xong rồi


          • 0
            vienthongnhatminh6222    8:41 p.m. 24 Tháng 5, 2024

            Hết cứu