گشتِ محشر


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

مینو می‌خواهد یک سفر شگفت انگیز به شهرجادویی را شروع کند. امّا چون حدس می‌زند به تنهایی از پسش بر نمی‌آید به دنبالِ هم‌سفر می‌گردد. برای همین قصد دارد تعدادی آگهی به منظورِ جذبِ هم‌سفر بنویسد.

مینو قصد دارد آگهی‌ها را با رشته‌ی SS که در اختیار دارد بنویسد. به‌این صورت که هر کاراکتر رشته‌ی SS را روی یک تکّه کاغذ نوشته و سپس هر آگهی را با چیدن تعدادی از تکّه کاغذها در یک ردیف تولید می‌کند.

مینو حداکثر چند رونوشت از آگهی می‌تواند تولید کند؟

ورودی🔗

در خط اوّل ورودی رشته‌ی SS شامل a, b, c, ..., z, 1, 2, ..., 9 و «فاصله» آمده‌است.

در خط دوّم ورودی متن آگهی شامل a, b, c, ..., z, 1, 2, ..., 9 و «فاصله» آمده‌است.

هر دو رشته‌ی ورودی شامل حداقل ‌‌‌11 و حداکثر 10510^5 کاراکتر هستند.

دقّت کنید که فاصله «» هم یک کاراکتر در نظر گرفته می‌شود.

خروجی🔗

در تنها خط خروجی حداکثر تعداد آگهی‌ها را چاپ کنید.

مثال🔗

ورودی نمونه🔗

abracadabra 2018 codeknock
ab cd
Plain text

خروجی نمونه🔗

2
Plain text

*توضیح نمونه: * چون رشته‌ی SS شامل دو فاصله می‌باشد، واضح است که حداکثر تعداد آگهی‌ها از ۲ بیشتر نیست. و ۲ آگهی هم قابل تولید است.

هوهوچی‌چی


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

پگاه خود را به عنوان هم‌سفر مینو معرفی کرد.

حال آن‌ها می‌خواهند با قطار گشتِ محشر را آغاز کنند. قطار آن‌ها nn واگن دارد که به ازای هر 1in1 \leq i \leq n دقیقا یکی از واگن‌ها ii کوپه دارد.

کوپه‌های قطار به ترتیب از چپ به راست با 11 تا n×(n+1)2\frac{n \times (n+1)}{2} شماره‌گذاری شده‌اند.

عدد یک واگن برابر شماره‌ی چپ ترین کوپه‌ی آن واگن است.

می‌دانیم واگن‌ها به ترتیبی بهم متصل شده‌اند که تعداد واگن‌هایی که عدد آن‌ها فرد است، بیشینه می‌باشد. چینش واگن‌های این قطار چگونه است؟

ورودی🔗

تنها ورودی عدد nn تعداد واگن‌های قطار است.

1n100 000 1 \leq n \leq 100\ 000

خروجی🔗

در خروجی nn عدد چاپ کنید که تعداد کوپه‌های هر واگن از چپ به راست است. اگر چند چینشِ خوب برای واگن‌ها وجود داشت یکی از آن‌ها را به دل‌خواه خروجی دهید.

مثال🔗

ورودی نمونه🔗

5
Plain text

خروجی نمونه🔗

2 1 3 4 5
Plain text

توضیح نمونه: عدد واگن‌ها در چینش ۵ ۴ ۳ ۱ ۲ به ترتیب ۱۱ ۷ ۴ ۳ ۱ است و بین همه‌ی چینش‌های مختلف ‌‌‌‌nn واگن بیشینه‌ی تعداد واگن‌هایی که عدد آن‌ها فرد است‌ ‌۴ می‌باشد.

جنگِ داخلی


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

مینو و پگاه یک سفر موفّقیّت‌آمیز را با قطار گذراندند. امّا بلافاصله بعد از پیاده شدن از قطار تعدادی فرد غول‌پیکر جلوی آن‌ها را گرفتند و اعلام کردند که پگاه باید ریاست قبیله‌ی آن‌ها را به مدّت یک‌ سال بپذیرد وگرنه او را شقّه‌شقّه می‌کنند!

پگاه تصمیم گرفت ریاست قبیله را بپذیرد و قبیله را تا شهرجادویی با خود همراه کند. امّا مینو که اصلاُ اعصاب همراه شدن با این‌همه آدم غول‌پیکر را نداشت آن‌ها را به چالشی دعوت کرد تا هرکس از این ‌چالش جان سالم به در برد را همراه خود به شهر جادویی ببرد.

پس یک مترسک روی مبدأ صفحه‌ی مختصات قرار داد و هر یک از اعضای قبیله را با یک کلاشنیکف به یکی از نقاط صفحه فرستاد و از آن‌ها خواست تا هم‌زمان به سمت مترسک شلیک کنند (هر گلوله تا جایی به مسیر خود ادامه می‌دهد که به آدم (زنده یا مُرده!) برخورد کند؛ یعنی با برخورد به مترسک یا گلوله‌ی دیگر متوقف نمی‌شود).

به مینو بگویید چند نفر از اعضای قبیله در این چالش کشته می‌شوند.

ورودی🔗

در خط اوّل ورودی nn تعداد اعضای قبیله آمده‌است.

در ‌nn خط بعد در هر خط دو عدد xix_i و yiy_i آمده که نشان‌دهنده‌ی مختصات نفر iiاُم است.

تضمین می‌شود همه‌ی اعداد ورودی صحیح هستند و هیچ دو فردی از قبیله به یک نقطه فرستاده نمی‌شوند. هم‌چنین هیچ فردی به مبدأ فرستاده نمی‌شود.

1n1 000 000 1 \leq n \leq 1\ 000\ 000 1 000xi,yi1 000 -1\ 000 \leq x_i, y_i \leq 1\ 000

خروجی🔗

در خروجی تنها یک عدد که برابر کشته‌شدگان چالش است را چاپ کنید.

مثال🔗

ورودی نمونه🔗

3
1 1
2 2
-1 -1
Plain text

خروجی نمونه🔗

2
Plain text

توضیح نمونه: گلوله‌ی فردی که در 2,22, 2 ایستاده است به فردی که در ‌‌1,11, 1 ایستاده برخورد می‌کند.

گلوله‌ی فردی که در 1,11, 1 ایستاده است به فردی که در 1,1-1, -1 ایستاده برخورد می‌کند.

گلوله‌ی فردی که در ‌‌‌ 1,1-1, -1 ایستاده‌ است به فردی که در ‌1,11, 1 ایستاده برخورد می‌کند.

پس در نهایت ‌‌۲ نفر مورد اصابت گلوله قرار گرفته و کشته می‌شوند.

مینو هنوز غُر می‌زند!


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

مینو با اینکه موفق شده تعداد زیادی از افراد قبیله را بکشد باز هم از داشتن تعدادی هم‌سفر غول پیکر اصلاً خوشحال نیست.

برای همین پگاه که سعی دارد هوش و لیاقت افراد قبیله‌اش را به مینو ثابت کند از مینو می‌خواهد که سخت‌ترین سوالی که در ذهن دارد را از افراد بپرسد و ببیند که با زیرکیِ تمام جوابش را خواهند داد.

سوال مینو از این قرار است:

تعداد nn چندضلعی در صفحه‌ی مختصات قرار داده‌ شده‌است. خواسته‌ی مینو از افراد پیدا کردن کوچک‌ترین دایره‌کوچیکه‌ی ممکن برای این چندضلعی‌ها بعد از انجام حداکثر ‌‌kk تا عملیات کلّه‌شکنی است.

دایره‌کوچیکه‌ی چندتا شکل کوچکترین دایره به مرکز مبدأ مختصات است که همه‌ی شکل‌ها را شامل می‌شود.

مینو برای چند ضلعی شماره‌ی ii نقطه‌ی pip_i را در نظرگرفته و عملیات کلّه‌شکنی را به این صورت تعریف می‌کند:

  1. انتخاب یکی از چندضلعی‌ها
  2. نصف کردن فاصله‌ی رئوس چندضلعی تا نقطه‌ای که برای آن چندضلعی در نظر گرفته است.

به غول‌پیکرها برای حل سؤال مینو کمک کنید.

ورودی🔗

خط اوّل ورودی شامل دو عدد nn و kk است که با فاصله از هم جدا شده‌اند.

پس از آن nn چندضلعی به صورت زیر ورودی داده می‌شود:

  1. ابتدا تعداد رئوس چندضلعی mim_i داده می‌شود.
  2. سپس xpix_{p_i} و ypiy_{p_i} مختصات نقطه‌ای که مینو برای آن چندضلعی درنظر گرفته داده‌می‌شود.
  3. بعد از آن mim_i خط داده می‌شود که هر خط شامل xi,jx_{i, j} و yi,jy_{i, j} مختصات رأس ‌jjاُم چندضلعی است.

تضمین می‌شود تمام اعداد ورودی صحیح هستند.

توجه کنید که منظور از چندضلعی با یک رأس، یک رأسِ تنها و منظور از چند ضلعی با دو رأس، دو رأس که با یک ضلع به‌هم متصل شده‌اند است. 1n,k100 000 1\leq n, k \leq 100\ 000 1mi20 1\leq m_i \leq 20 109xpi,ypi109 -10^9 \leq x_{p_i}, y_{p_i} \leq 10^9 109xi,j,yi,j109 -10^9 \leq x_{i, j}, y_{i, j} \leq 10^9 Σi=1nmi100 000 \Sigma_{i=1}^{n} m_i \leq 100\ 000

خروجی🔗

در خروجی تنها یک عدد، شعاع کوچکترین دایره‌کوچیکه‌ی ممکن بعد از انجام حداکثر kk تا عملیات کلّه‌شکنی، را با دقیقاً ۶ رقم اعشار چاپ کنید.

مثال🔗

ورودی نمونه🔗

2 2
2
2 0
3 0
1 0
2
-2 0
-1 0
-3 0
Plain text

خروجی نمونه🔗

2.500000
Plain text

میتی‌کومان


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

پگاه که حسابی غرقِ ریاست شده‌است تصمیم گرفته از بین غول‌پیکرها برای خود چندتا مأمور مخصوص انتخاب کند و نشانِ مأمورِ مخصوصِ حاکمِ بزرگ را به آن‌ها اهدا کند.

از این رو سراغ شجره‌نامه‌ی افراد قبیله می‌رود. شجره‌نامه یک درخت nn رأسی است که از رأس شماره‌ی ۱ ریشه‌دار شده و هر رأس آن یکی از افراد قبیله است.

در این قبیله مقدار بدبختی هر غول‌پیکر با یک عدد نشان داده می‌شود.

هم‌چنین افراد این قبیله به علّت اعتقاد راسخی که به «فرزند بیشتر، زندگیِ شادتر» دارند؛ اعتبار هر فرد را برابر تعداد نوادگان آن فرد در شجره‌نامه قرار می دهند.

پگاه می‌خواهد مأموران مخصوص خود را به گونه‌ای انتخاب کند که مجموع بدبختی آن‌ها از kk بیشتر نباشد و هیچ مأموری از نوادگان مأمور دیگری نباشد.

مجموع اعتبار مأموران ویژه‌ی پگاه حداکثر چقدر می‌تواند باشد؟

ورودی🔗

در خط اوّل دو عدد nn تعداد افراد قبیله و kk داده می‌شود که با یک فاصله از هم جدا شده‌اند.

سپس در n1n-1 خط بعد در هر خط دو عدد uu و vv آمده که با یک فاصله از هم جدا شده‌اند و نشان‌دهنده‌ی یک رابطه‌ی پدر و پسری بین غول‌پیکر شماره‌ uu و غول‌پیکر شماره vv هستند.

در خط آخر ورودی ‌nn عدد داده می‌شود که عدد iiاُم میزان بدبختی غول‌پیکر iiاُم را نشان می‌دهد. مقدار بدبختی هر فرد عددی طبیعی بین ۱ تا 10910^9 است. 1n1 0001\leq n \leq 1\ 000 1k1001 \leq k \leq 100 1u,vn1 \leq u, v \leq n

خروجی🔗

در خروجی یک عدد که حداکثر مجموع اعتبار مأموران مخصوص پگاه است را چاپ کنید.

مثال🔗

ورودی نمونه🔗

5 5
1 2
1 3
3 4
3 5
6 2 5 1 3
Plain text

خروجی نمونه🔗

2
Plain text

توضیح نمونه: اگر پگاه فقط غول‌پیکر شماره ۳ را انتخاب کند، مجموع اعتبار مأموران بیشینه و برابر ۲ خواهد بود.

دوستیِ غول‌پیکری


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

همانطور که می‌دانید در قبیله‌ی غول‌پیکرها هر فرد یک عدد بدبختی و یک عدد اعتبار دارد. عدد بدبختی غول‌پیکر شماره ii را با bib_i و عدد اعتبار او را با aia_i نشان می‌دهیم.

فاصله‌ی عاطفی دو غول‌پیکر ‌ii و jj برابر است با: f(i,j)=aiaj+bibjf(i, j) = |a_i - a_j| + |b_i - b_j|

سه غول‌پیکر ii و jj و ll تشکیل یک اکیپ می‌دهند اگر مجموع فواصل عاطفی دو به دوی آن‌ها از kk بیشتر نباشد. به عبارتی: f(i,j)+f(i,l)+f(j,l)kf(i, j) + f(i, l) + f(j, l) \leq k

مینو از وقتی که به هوش و ذکاوت سرشار افراد قبیله پی برده‌است؛ می‌خواهد تعداد اکیپ‌های قبیله را بداند. به او کمک کنید.

ورودی🔗

در خط اوّل ورودی عدد nn تعداد اعضای قبیله و kk آمده‌اند که با یک فاصله از هم جدا شده‌اند.

در nnخط بعد در هر خط دو عدد aia_i و bib_i آمده‌است.

1n2 0001 \leq n \leq 2\ 000 1k4×1091 \leq k \leq 4 \times 10^9 0ai,bi1090 \leq a_i, b_i \leq 10^9

خروجی🔗

در خروجی یک عدد که تعداد اکیپ‌های غول‌پیکرهاست را چاپ کنید.

مثال🔗

ورودی نمونه🔗

5 10
4 2
5 3
1 1
3 1
2 4
Plain text

خروجی نمونه🔗

5
Plain text

قبیله به مقصد می‌رسد ^.^


  • محدودیت زمان: ۵ ثانیه
  • محدودیت حافظه: ۴۰ مگابایت

غول‌پیکرها به همراه مینو و پگاه بعد از یک سفر سخت و طولانی بالأخره به شهرجادویی رسیدند. سُس بیژن، شکلات پارمیدا، روغن لادن، شیرین‌عسلِ جذّاب و همه‌ی خوراکی‌های دیگر از آن‌ها استقبال کردند. ولی بلافاصله بعد از اتمام پذیرایی، ساکنین شهرجادویی مشکلی که به تازگی برای آن‌ها پیش آمده را با پگاه و مینو مطرح کردند تا شاید بتوانند آن را حل کنند.

شهر جادویی شامل nn شهرستان است که بعضی آن‌ها با یک جاده به‌هم متصل شده‌اند. می‌دانیم بین هر دو شهرستان دقیقاً یک مسیر وجود دارد. (هر مسیر از تعدادی جاده تشکیل شده است.) به علاوه، هر شهرستان در شهرجادویی تعدادی درخت آلبالو دارد.

ساکنان شهر جادویی qq مشکل دارند، که در مشکل iiاُم می خواهند بدانند اگر مسیر شهرستان ‌uiu_i و viv_i را با شروع از uiu_i و kik_i تا kik_i تا طی کنند تاجایی که دیگر نتوانند به مسیر خود ادامه دهند در مجموع چندتا درخت آلبالو می‌بینند. (اگر از همه‌ی شهرستان‌های مسیر بین ‌uiu_i و viv_i عبور کنیم؛ مسیر را یکی‌یکی طی کرده‌ایم.)

همچنین میدانیم اگر ansians_i پاسخ مشکل iiاُم باشد: k1=x1k_1 = x_1 ki=ansi1xi     i>1k_i = ans_{i-1}\oplus x_i \ \ \ \ \ i > 1 به مینو و پگاه کمک کنید تا خودشان را به ساکنان شهرجادویی ثابت کنند.

ورودی🔗

در خط اوّل ورودی دو عدد nn و qq داده می‌شود. 1n,q100 0001 \leq n, q \leq 100\ 000 در خط بعد nn عدد آمده که عدد iiاُم tit_i (تعداد درخت‌های آلبالوی شهرستانii) است. 1ti1 000 000 0001 \leq t_i \leq 1\ 000\ 000\ 000

پس از آن در n1n-1 خط جاده‌های شهر جادویی داده می‌شوند. هر خط شامل دو عدد uu و vv است که شهرستان‌های دو سر جاده را مشخص می‌کنند. 1u,vn1 \leq u,v \leq n سپس در qq خط بعد در هر خط سه عدد uiu_i و viv_i و xix_i می‌آید که معرف مشکل ‌‌‌iiاُم هستند. 1ui,vin1 \leq u_i, v_i \leq n 1xi10151 \leq x_i \leq 10^{15}

خروجی🔗

خروجی شامل qq خط است که خط iiاُم آن برابر ansians_i می‌باشد.

مثال🔗

ورودی نمونه🔗

4 5
1 2 3 4
1 2
2 3
1 4
1 4 1
1 4 1
1 2 2
1 3 4
1 4 3
Plain text

خروجی نمونه🔗

5
1
1
1
1
Plain text