Universal Cup Judging System

Universal Cup

実行時間制限: 2 s メモリ制限: 1024 MB
統計

本題附有附件。你可以用佢嚟模擬同埋視覺化粒子嘅移動。

VegiCat 喺一個有 $n$ 行同 $n$ 列嘅網格上面觀察粒子。左下角嗰格嘅座標係 $(1, 1)$。水平座標由左至右遞增,而垂直座標由下至上遞增。每粒粒子都有一個水平方向(左或者右)同埋一個垂直方向(上或者下)。喺每一步開始嗰陣,每粒粒子都會按以下方式調整佢嘅方向:

problem_23593_b4836be5c81ec5d9dcf55b91a721f3ad.png
  • 如果喺佢嘅水平方向上面嘅下一格已經出咗網格外面,佢嘅水平方向就會反轉。
  • 如果喺佢嘅垂直方向上面嘅下一格已經出咗網格外面,佢嘅垂直方向就會反轉。

調整完之後,喺 $(x, y)$ 嘅一粒粒子會產生兩粒子粒子:

  • 如果佢嘅水平方向係左,就喺 $(x - 1, y)$ 產生一粒;如果係右,就喺 $(x + 1, y)$ 產生一粒;
  • 如果佢嘅垂直方向係下,就喺 $(x, y - 1)$ 產生一粒;如果係上,就喺 $(x, y + 1)$ 產生一粒。

兩粒子粒子都會繼承父粒子嘅水平方向同垂直方向。然後父粒子就會消失。

無論方向係點,多粒粒子可以同一時間佔據同一個格。佢哋唔會互相影響或者改變對方嘅方向。

喺時間 $0$,喺 $(x_0, y_0)$ 有四粒粒子,分別有以下嘅方向組合:

  • 右同埋上;
  • 左同埋上;
  • 右同埋下;
  • 左同埋下。

喺每一步,所有粒子會同時調整方向,然後好似上面講嘅咁樣分裂。

題目會畀你 $q$ 個查詢。每個查詢會畀整數 $A, B, C$ 同埋一個時間 $t$。對於每個查詢,請搵出喺時間 $t$ 滿足 $Ax + By + C = 0$ 而且入面至少有一粒粒子嘅網格格仔 $(x, y)$ 嘅數量。

輸入格式

第一行包含一個整數 $T$($1 \le T \le 10^5$),代表測試資料嘅組數。接住落嚟係各組測試資料嘅描述。

每組測試資料嘅第一行包含四個整數 $n, x_0, y_0, q$($2 \le n \le 10^9$,$1 \le x_0, y_0 \le n$,$1 \le q \le 10^5$)。個網格有 $n$ 行同 $n$ 列,初始格仔係 $(x_0, y_0)$,而且有 $q$ 個查詢。

接住落嚟嘅 $q$ 行,每行包含四個整數 $A, B, C$ 同 $t$($|A|, |B|, |C| \le 10^9$,$0 \le t \le 10^9$)。呢個代表喺時間 $t$ 針對直線 $Ax + By + C = 0$ 嘅一個查詢。題目保證 $A$ 同 $B$ 唔會同時係 $0$。

題目保證所有測試資料入面 $q$ 嘅總和唔超過 $10^5$。

輸出格式

對於每個查詢,喺一行入面輸出一個整數:喺時間 $t$ 滿足 $Ax + By + C = 0$ 而且至少包含一粒粒子嘅網格格仔 $(x, y)$ 嘅數量。

範例

範例輸入 1

1
6 5 5 4
2 -1 -5 0
1 -1 0 1
11 45 14 2
1 0 -5 3

範例輸出 1

1
0
0
3

說明

下面張圖展示咗範例入面粒子嘅演變過程,同埋查詢嘅直線,其中灰色格仔代表直線經過嘅整數點所在嘅格仔,而所有分裂方向都已經做咗合法性調整。由於第三個查詢離緊要考慮嘅網格太遠,呢度省略咗第三個查詢嘅直線。

同一個格仔入面具有相同方向組合嘅粒子會畫成單一個符號;重複嘅數量會被省略。

problem_23593_6aefd3f27e435f8b6b87db43b7a7aa66.png

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.