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

تعداد \(n\) دیسک با اندازه‌های برابر و شماره‌های ۱ تا \(n\) داریم. این \(n\) دیسک ابتدا هر کدام در یک پایه قرار گرفته‌اند و \(n\) برج با ارتفاع یک ساخته‌اند. دو مدل \(query\) زیر را داریم:

  • دستور \(Merge(x,y)\): برجی که شامل دیسک \(x\) است را از پایه‌ی خود خارج کرده و به همان ترتیب به روی پایه‌ای که شامل دیسک \(y\) است اضافه می‌کنیم.
  • دستور \(Height(x)\): این که دیسک \(x\) در برجی که شامل آن است در چه طبقه ای قرار گرفته را چاپ می‌‌کند.

ورودی

در خط اول ورودی عدد \(m\) می‌آید که تعداد \(query\)هایی که در ادامه می‌آیند را مشخص می‌کند. در \(m\) خط بعدی درهر کدام یک \(query\) از دو نوع بالا داده می‌شود. \[n \leq 30\ 000\] \[m \leq 100\ 000\]

خروجی

به ازای هر دستور از نوع \(Height\) طبقه‌ی دیسک موردنظر را در یک سطر چاپ کنید.

مثال

ورودی نمونه

9
Height 1
Merge 1 2
Height 1
Height 2
Merge 3 4
Merge 4 1
Height 2
Height 4
Height 3

خروجی نمونه

1
2
1
1
3
4
ارسال پاسخ برای این سؤال
فایلی انتخاب نشده است.