TopCoder

User's AC Ratio

100.0% (1/1)

Submission's AC Ratio

100.0% (1/1)

Tags

Description

在一個廣闊的大草原裡,有一隻大獅子時常在上面奔跑追捕獵物,從日出到日落。有一天,他發現到太陽照射到物品會產生影子,並且會隨著時間改變角度以及長度,因此他決定要來做實驗去觀察這個現象。他撿了幾根細長的棍子,計算好每一根棍子的高度還有座標位置,並且做完了實驗和收集數據。當他興高采烈的跑去跟好朋友大老虎說的時候,突然發現他辛苦收集的數據不見了,由於他不想要被大老虎嘲笑,因此希望你可以透過你的數學知識幫助大獅子假造一份實驗數據。

大獅子選定了一批實驗用的 $N$ 根棍子,在計算完棍子的數據後會將每一根棍子的高度和位置告訴你,他在之前一共進行了 $Q$ 次的實驗,在之前的實驗中,大獅子會觀察每次太陽照射後,影子是向棍子右或是向左延伸,以及影子長度和棍子長度的比值是多少,大獅子希望你幫他算出在這樣的條件下,產生出影子的全部交集長度會是多少,對於每一次的實驗都需要算出答案。

Input Format

第一行會輸入兩個正整數 $N, Q$,代表樹枝的數量和詢問的次數。

第二行會輸入 $N$ 個整數 $x_i$,代表樹枝的 x 座標,$x_i$ 會兩兩相異,$x$ 座標向右為正。

第三行會輸入 $N$ 個正整數 $h_i$,代表樹枝的高度。

第四行會輸入 $Q$ 個整數 $q_i$,代表大獅子需要你幫忙計算當樹枝影子長度為樹枝高度的 $q_i$ 倍時,總共的影子長度為多少。當 $q_i > 0$ 時代表此時竿子影子向右, $q_i < 0$ 代表影子向左。

  • $1\leq N, Q \leq 200000$
  • $-10^ {18} \leq x_i \leq 10^ {18}$
  • $x_i$ 兩兩相異
  • $1 \leq h_i \leq 10^ 9$
  • $-10^ 9 \leq q_i \leq 10^ 9$

Output Format

輸出一行,包含 $Q$ 個用空格分隔的整數。第 $i$ 個數字表示對應第 $i$ 個實驗中,根據給定的影子與木棍長度比值計算出的影子總長度。

Sample Input 1

3 4
1 5 15
2 3 4
-3 -2 2 4

Sample Output 1

20 16 18 30

Sample Input 2

5 6
1 5 11 19 26
2 2 7 2 3
-5 -4 -2 0 3 4

Sample Output 2

50 43 24 0 34 38

Hints

在第一個範例測資中,第一筆詢問的 $q_i$ 值為 -3,代表著影子的長度為棍子長度的 3 倍,影子向左。
棍子 1 會產生影子覆蓋到 $[-5, 1]$ 的範圍,棍子 2 會產生影子覆蓋到 $[-4, 5]$ 的範圍,棍子 3 會產生影子覆蓋到 $[3, 15]$ 的範圍,總共覆蓋到的範圍是 $[-5, 15]$,所以影子長度是 20。

第三筆詢問的 $q_i$ 值為 2,代表著影子的長度為棍子長度的 2 倍,影子向右。
棍子 1 會產生影子覆蓋到 $[1, 5]$ 的範圍,棍子 2 會產生影子覆蓋到 $[5, 11]$ 的範圍,棍子 3 會產生影子覆蓋到 $[15, 23]$ 的範圍,總共覆蓋到的範圍是 $[1, 11] \bigcup [15, 23]$,所以影子長度是 18。

藍色的線為每根棍子產生的影子,灰色為聯集起來的範圍

Problem Source

YTP 2025 國中組程式挑戰營 p13

Subtasks

No. Testdata Range Constraints Score
1 0~1 範例測試資料 0
2 2~61 $N, Q \leq 2000$ 10
3 0~125 無額外限制 15

Testdata and Limits

No. Time Limit (ms) Memory Limit (VSS, KiB) Output Limit (KiB) Subtasks
0 3000 1048576 65536 1 3
1 3000 1048576 65536 1 3
2 3000 1048576 65536 2 3
3 3000 1048576 65536 2 3
4 3000 1048576 65536 2 3
5 3000 1048576 65536 2 3
6 3000 1048576 65536 2 3
7 3000 1048576 65536 2 3
8 3000 1048576 65536 2 3
9 3000 1048576 65536 2 3
10 3000 1048576 65536 2 3
11 3000 1048576 65536 2 3
12 3000 1048576 65536 2 3
13 3000 1048576 65536 2 3
14 3000 1048576 65536 2 3
15 3000 1048576 65536 2 3
16 3000 1048576 65536 2 3
17 3000 1048576 65536 2 3
18 3000 1048576 65536 2 3
19 3000 1048576 65536 2 3
20 3000 1048576 65536 2 3
21 3000 1048576 65536 2 3
22 3000 1048576 65536 2 3
23 3000 1048576 65536 2 3
24 3000 1048576 65536 2 3
25 3000 1048576 65536 2 3
26 3000 1048576 65536 2 3
27 3000 1048576 65536 2 3
28 3000 1048576 65536 2 3
29 3000 1048576 65536 2 3
30 3000 1048576 65536 2 3
31 3000 1048576 65536 2 3
32 3000 1048576 65536 2 3
33 3000 1048576 65536 2 3
34 3000 1048576 65536 2 3
35 3000 1048576 65536 2 3
36 3000 1048576 65536 2 3
37 3000 1048576 65536 2 3
38 3000 1048576 65536 2 3
39 3000 1048576 65536 2 3
40 3000 1048576 65536 2 3
41 3000 1048576 65536 2 3
42 3000 1048576 65536 2 3
43 3000 1048576 65536 2 3
44 3000 1048576 65536 2 3
45 3000 1048576 65536 2 3
46 3000 1048576 65536 2 3
47 3000 1048576 65536 2 3
48 3000 1048576 65536 2 3
49 3000 1048576 65536 2 3
50 3000 1048576 65536 2 3
51 3000 1048576 65536 2 3
52 3000 1048576 65536 2 3
53 3000 1048576 65536 2 3
54 3000 1048576 65536 2 3
55 3000 1048576 65536 2 3
56 3000 1048576 65536 2 3
57 3000 1048576 65536 2 3
58 3000 1048576 65536 2 3
59 3000 1048576 65536 2 3
60 3000 1048576 65536 2 3
61 3000 1048576 65536 2 3
62 3000 1048576 65536 3
63 3000 1048576 65536 3
64 3000 1048576 65536 3
65 3000 1048576 65536 3
66 3000 1048576 65536 3
67 3000 1048576 65536 3
68 3000 1048576 65536 3
69 3000 1048576 65536 3
70 3000 1048576 65536 3
71 3000 1048576 65536 3
72 3000 1048576 65536 3
73 3000 1048576 65536 3
74 3000 1048576 65536 3
75 3000 1048576 65536 3
76 3000 1048576 65536 3
77 3000 1048576 65536 3
78 3000 1048576 65536 3
79 3000 1048576 65536 3
80 3000 1048576 65536 3
81 3000 1048576 65536 3
82 3000 1048576 65536 3
83 3000 1048576 65536 3
84 3000 1048576 65536 3
85 3000 1048576 65536 3
86 3000 1048576 65536 3
87 3000 1048576 65536 3
88 3000 1048576 65536 3
89 3000 1048576 65536 3
90 3000 1048576 65536 3
91 3000 1048576 65536 3
92 3000 1048576 65536 3
93 3000 1048576 65536 3
94 3000 1048576 65536 3
95 3000 1048576 65536 3
96 3000 1048576 65536 3
97 3000 1048576 65536 3
98 3000 1048576 65536 3
99 3000 1048576 65536 3
100 3000 1048576 65536 3
101 3000 1048576 65536 3
102 3000 1048576 65536 3
103 3000 1048576 65536 3
104 3000 1048576 65536 3
105 3000 1048576 65536 3
106 3000 1048576 65536 3
107 3000 1048576 65536 3
108 3000 1048576 65536 3
109 3000 1048576 65536 3
110 3000 1048576 65536 3
111 3000 1048576 65536 3
112 3000 1048576 65536 3
113 3000 1048576 65536 3
114 3000 1048576 65536 3
115 3000 1048576 65536 3
116 3000 1048576 65536 3
117 3000 1048576 65536 3
118 3000 1048576 65536 3
119 3000 1048576 65536 3
120 3000 1048576 65536 3
121 3000 1048576 65536 3
122 3000 1048576 65536 3
123 3000 1048576 65536 3
124 3000 1048576 65536 3
125 3000 1048576 65536 3