درخت کسرا


  • محدودیت زمان: ۱ ثانیه
  • محدودیت حافظه: ۲۵۶ مگابایت

درخت دودویی از کسرها داریم که روی هر راسش کسری به فرم aibi\frac {a_i} {b_i} نوشته شده است. درخت به این شکل ساخته میشود:

  1. a1a_{1} = b1b_{1} = 11
  2. a2ia_{2i} = (aia_{i} + bib_{i} ) , b2ib_{2i} = bib_{i} (بچه سمت چپ)
  3. a2i+1a_{2i+1} = aia_{i} , b2i+1b_{2i+1} = (aia_{i} + bib_{i} ) (بچه سمت راست)

فاصله دو راس در درخت را تعداد یال های تنهای مسیر بینشان تعریف می کنیم.

به شما QQ درخواست که هر کدام شامل کسری به فرم piqi\frac {p_i} {q_i} داده میشود.

برای هر عدد موجود در درخواست ها، اگر تنها یک راس در درخت وجود داشت که کسرش برابر کسر ورودی داده شده بود، فاصله راس آن کسر تا راس ۱ را در خروجی چاپ کنید و در غیر این صورت 1-1 خروجی دهید.

ورودی🔗

در خط اول QQ و در QQ خط بعدیpip_{i} و qiq_{i} به شما داده شده.

1Q100 0001 \le Q \le 100\ 000

1pi,qi10181 \le p_{i},q_{i} \le 10^{18}

خروجی🔗

در خط iiام اگر کسری معادل عدده piqi\frac {p_i} {q_i} بود و فقط این کسر معادل این عدد بود فاصله‌ی آن را از راس ۱ خروجی دهید در غیر این صورت 1-1 خروجی دهید.

مثال🔗

ورودی‌ نمونه🔗

2
1 1
1 2
Plain text

خروجی‌ نمونه🔗

0
1
Plain text
ارسال پاسخ برای این سؤال
در حال حاضر شما دسترسی ندارید.