7046.Bouncing Ball Steps

Time Limit: 1s Memory Limit: 512MB

There is a ball at the top-left corner of an $n \times m$ grid. The rows of the grid are numbered $1,2,\dots,n$ , and the columns are numbered $1,2,\dots,m$ .

The ball is initially moving diagonally away from the top-left corner. At every step, it moves one cell. Whenever the ball hits the border of the grid, it changes its direction.

What is the __cpLocation of the ball after $k$ steps and how many times has it changed direction?

Input Format(From the terminal/stdin)

The first line has an integer $t$ : the number of tests.

After this, there are $t$ lines. Each line has three integers $n$ , $m$ and $k$ : the size of the grid and the number of steps.

  • $1 \le t \le 1000$
  • $2 \le n,m \le 10^9$
  • $0 \le k \le 10^{18}$

Output Format(To the terminal/stdout)

For each test, print three integers: the __cpLocation of the ball and the number of direction changes.

Sample Input

Copy
6
3 4 0
3 4 1
3 4 2
3 4 3
3 4 4
42 1337 123456789
 \n
 · · \n
 · · \n
 · · \n
 · · \n
 · · \n
  ·    ·         \n

Sample Output

Copy
1 1 0
2 2 0
3 3 1
2 4 2
1 3 3
34 300 3101295
 · · \n
 · · \n
 · · \n
 · · \n
 · · \n
  ·   ·       \n
Source: CSES, Additional Problems II, 3215

Submit

请先 登录

© 2025 FAQs