#137. MCOCKTAIL – Pha chế Cocktail

Bộ nhớ: 256 MiB Thời gian: 1000 ms Nhập/xuất từ luồng chuẩn
Kiểu bài: Thông thường Kiểu chấm: So sánh văn bản
Đưa lên bởi: Trùm CUỐI

Đề bài

Boss Monarch có một cửa hàng kinh doanh Cocktail. Cocktail của cửa hàng được pha chế từ hai loại nguyên liệu cam và dâu. Cửa hàng có n loại Cocktail với tỉ lệ cam và dâu nhất định và số lượng không hạn chế. Mỗi khi có khách hàng yêu câu một loại Cocktail nào đó (theo tỉ lệ cam và dâu) thì nhà hàng sẽ tiến hành pha chế từ những loại có sẵn (theo một tỉ lệ nào đó) để được loại Cocktail theo yêu cầu của khách hàng (tất nhiên cũng có những trường hợp không pha chế được thì đành Sorry thượng đế).

Nguyên tắc pha chế như sau: Giả sử có k loại Cocktail với tỉ lệ cam:dau tương ứng là (C_1:D_1), (C_2, D_2), \ldots, (C_k, D_k) và đem pha chế k loại này với nhau theo tỉ lệ mỗi loại là t_1:t_2:\ldots:t_k thì sẽ được một loại Cocktail mới với tỉ lệ cam:dâu là:

\frac{{{t_1}{c_1} + {t_2}{c_2} + ... + {t_k}{c_k}}}{{{t_1} + {t_2} + ... + {t_k}}}:\frac{{{t_1}{d_1} + {t_2}{d_2} + ... + {t_k}{d_k}}}{{{t_1} + {t_2} + ... + {t_k}}}

Yêu cầu: Cho biết n loại Cocktail cửa hàng đang có và m loại Cocktail khách hàng yêu cầu. Hãy cho biết loại Cocktail nào nhà hàng có thể đáp ứng (pha được), loại Cocktail nào không.

Dữ liệu vào:

  • Dòng đầu ghi hai số nguyên dương n, m ;
  • n dòng tiếp theo, dòng thứ i ghi hai số nguyên không âm c_i, d_i là tỉ lệ cam:dâu của loại Cocktail thứ i nhà hàng đang có;
  • m dòng tiếp theo, dòng thứ j ghi hai số nguyên không âm c_j, d_j là tỉ lệ cam:dâu của loại Cocktail thứ j khách hàng yêu cầu.

Dữ liệu ra:

  • Gồm m dòng, với mỗi loại Cocktail khách hàng yêu cầu, ghi ra YES nếu nhà hàng pha chế được loại Cocktail đó, ngược lại ghi ra NO.

Ví dụ:

Dữ liệu vào:

3 2
0 10
20 30 
30 10
10 30
20 20

Dữ liệu ra:

NO
YES

Giải thích:

  • Ta có thể đáp ứng yêu cầu của vị khách thứ hai bằng cách pha 3 loại Cocktail theo tỉ lệ 1 : 3 : 2 .

Giới hạn:

  • 1 ≤ n,m ≤ 10^5; 0 ≤ c_i, d_i , c_j, d_j ≤ 10^9 .