رخ زیبا


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

عرفان و متین شطرنج بازی می‌کنند. مهره‌های رخ عرفان در (x1,y1)(x_1, y_1) و (x2,y2)(x_2, y_2) و متین در (x3,y3)(x_3, y_3) و (x4,y4)(x_4, y_4) قــرار دارد (۲ مهره در یک خانه قرار ندارند). عرفان به مهره‌ی رخش «زیبا» می‌گوید در صورتی که حداقل یکی از مهـره‌های رخ متین را تهدید کند (از نظر عرفان در صـورتی کـه دو مهره رخ هـم سـطر یـا هـم سـتون بـاشند یکدیگر را تهدید می‌کنند). عرفان اگر دقیقاً یکی از ۲ رخش «زیبا» باشد خوش حال می‌شود. متین از شما می‌خواهد که بگویید عرفان خوش حال است یا خیر.

ورودی🔗

در سطر iiام (1i4)(1 \leq i \leq 4) به ترتیب xix_i و yiy_i می‌آیند.

1xi,yi81 \leq x_i, y_i \leq 8

خروجی🔗

اگر عرفان خوش حال می شود چاپ کنید happy در غیر این صورت چاپ کنید unhappy.

مثال‌ها🔗

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

1 1
2 2
3 3
4 4
Plain text

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

unhappy
Plain text

هیچ کدام از رخ‌های عرفان، هیچ کدام از رخ‌های متین را تهدید نمی‌کنند. پس هیج کدام از رخ‌های عرفان زیبا نیست در نتیجه عرفان خوش‌حال نیست.

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

1 1
1 2
1 3
8 2
Plain text

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

unhappy
Plain text

رخ اول عرفان که در (1,1)(1, 1) قرار دارد رخ اول متين را که در (3,1)(3, 1) قرار دارد تهدید می‌کند پس رخ اول عرفان زيبا است. رخ دوم عرفان هم که در (2,1)(2, 1) قرار دارد هر ۲ رخ متین را تهدید می‌کند، پس این رخ هم زيبا است. از آنجایی که هر ۲ رخ عرفان زیبا هست پس عرفان خوش‌حال نیست.

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

2 1
4 3
2 7
8 6
Plain text

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

happy
Plain text

رخ اول عرفان که در (1,2)(1, 2) قرار دارد رخ اول متین را که در (7,2)(7, 2) قرار دارد تهدید می‌کند پس این رخ زيبا است. رخ دوم عرفان که در (3,4)(3, 4) قرار دارد هیج کدام از رخ های متین را تهدید نمی‌کند پس زیبا نیست. از آنجایی که دقيقاً یکی از ۲ رخ عرفان زيبا است پس عرفان خوش‌حال است.

جعبه شکلات


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

استاد و kk شاگردش بـه مـغازه شکلات فـروشی سـر کوچه که nn جـعبه شکلات دارد می‌رونـد. جعبه شـکلات iiام aia_i شکلات دارد و cic_i تومان قیمت دارد. استاد و شاگردانش در صورتی حین خوردن یک جعبه شکلات دعوایشان نمی‌شود که ۲ شرط زیر برقرار باشد:

  1. شاگرد‌ها همه به تعداد برابر شکلات بخورند و استاد دقيقاً ۱ شکلات از شاگرد‌ها بيشتر.
  2. همه حداقل ۱ شکلات بخورند.

دقت کنید که شکلات‌ها بین افراد افراز می‌شود (یعنی همه‌ی شکلات‌ها پخش می‌شود و یک شکلات را ۲ نــفر نمی‌خورند). اسـتاد vv تومان پـول دارد و بـا پـولـش می‌خواهد بیشـتریـن تعداد جعبه شکلات را بخرد به طوری که حین خـوردن هیچ کدام از جعبه شکلات‌ها بـینشان دعوا نشود (دقت کنید، ابتدا یک جعبه شکلات را بین خود تقسیم می‌کنند و می‌خوردند و سپس جعبه بعدی را باز می‌کنند). حال استاد از شما می‌خواهد تا بگویید حداکثر چند جعبه شکلات می‌تواند بخرد.

ورودی🔗

در سطر اول به ترتيب سه عدد kk، vv و nn و در سطر بعدی nn عدد می‌آید که iiامين آن‌ها aia_i است و درسطر بعدی nn عدد می‌آید که iiامین آن‌ها cic_i است.

1n,k1000001 \leq n, k \leq 100000 1ci,ai,v1091 \leq c_i, a_i, v \leq 10^9

خروجی🔗

تعداد حداکثر جعبه شکلاتی که می‌توانند بخرند و با خوردنش بینشان دعوت نشود.

مثال‌🔗

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

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

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

1
Plain text

جعبه‌های اول و دوم را می‌توان بخرد به طوری کـه حین خـوردن شکلات‌هایش بـینشان دعـوا نشود و با پولی که دارد از میان این ۲ حداکثر یکی را می‌تواند بخرد.

پاپ کورن


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

عرفان و دوستانش که مجموعاً 3n3n نفر می‌شوند به سینما رفتند و روی 3n3n صندلی متوالی در یک رديف نشستند. آن‌ها با خود n+1n + 1 بسته پاپ كورن به سینما بردند. قرار شد n+1n + 1 پاپ کورن بین افراد تقسم شود به نحوی که به هر نفر حداکثر یک بسته پاپ کورن برسد. در صورتی یک نفر از فیلم لذت می‌برد که یا خود یا یکی از ۲ نفر بغل دستی‌اش (۲ نفر کناری هر کدام ۱ بغل دستی دارند) پاپ کورن داشته باشد. حال برای عرفان سوال شده است که به چند طريق می‌توان پاپ کورن‌ها را بین افراد تقسیم کرد که همه از فیلم لذت ببرند.

ورودی🔗

در سطر اول عدد TT آمده است که تعداد تست کیس‌ها است. در هر یک TT خط بعد یک عدد آمده است که نشان دهنده‌ی nn است.

1T1000001 \leq T \leq 100 \, 000

1n1091 \leq n \leq 10^9

خروجی🔗

بـه ازای هـر تسـت تعداد حالات افراز n+1n + 1 پـاپ کورن بین 3n3n نفر به طوری که همه از فیلم لذت ببرند را به پیمانه‌ی 109+710^9 + 7 چاپ کنید.

مثال🔗

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

3
1
2
3
Plain text

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

3
10
22
Plain text

حالات مطلوب برای n=1n = 1 (عدد 11 پاپ کورن دارد 00 ندارد) :

101110011101 \mid 110 \mid 011

حالات مطلوب برای n=2n = 2 (عدد 11 پاپ کورن دارد 00 ندارد) :

110010101010011010100110010110110010 \mid 101010 \mid 011010 \mid 100110 \mid 010110

101001011001100101010101010011101001 \mid 011001 \mid 100101 \mid 010101 \mid 010011

بازی جنگی


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

در بازی OSTADD که یک بازی جنگی است nn نوع تفنگ وجود دارد که تفنگ iiام tit_i تیر دارد که هر تیر pip_i قدرت دارد و برای خریدش cic_i هزینه لازم است. دشمن mm گروه دارد که گروه iiام aia_i نفر هستند و هر کدام bib_i جان دارد (یعنی برای این که بمیرد باید تیری به قدرت بیشتر مساوی bib_i به او شلیک کرد). ما می‌خواهیم همه افراد دشمن را با زدن دقيقاً یک تیر به هر یک از آن‌ها بکشیم. حداقل هزینه برای خرید تفنگ برای کشتن تمام افراد دشمن چه قدر است.

ورودی🔗

در سطر اول عدد nn می‌آید و در nn سطر بعدی در هر سطر به ترتیب tit_i، pip_i و cic_i که اطلاعات تفنگ iiام است می‌آید و در سطر بعد عدد mm و در mm سطر بعدی در هر سطر به تریب aia_i و bib_i می‌آید که اطلاعات گروه iiام دشمن است. 1n,m5001 \leq n, m \leq 500 1ai,ti1001 \leq a_i, t_i \leq 100 1pi,bi,ci10000000001 \leq p_i, b_i, c_i \leq 1000000000

خروجی🔗

حداقل هزینه برای خرید تفنگ برای کشتن تمام افراد دشمن چه قدر است. اگر این کار ممکن نیست -1 چاپ کنید.

مثال‌ها🔗

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

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

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

15
Plain text

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

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

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

15
Plain text

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

1
5 3 10
1
3 5
Plain text

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

-1
Plain text

ارایه هدیه


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

سینا به عرفان یک آرایه از nn عدد هديه داده است. ایلیا از عرفان می‌خواهد QQ عمليات روی آرایه انجام دهد. هر عملیات به یکی از ۴ حالت زیر است:

  1. 0lr:ai(lir)0 \, l \, r : \sum a_i \quad (l \leq i \leq r)
  2. 1lrv:ai:=aiv(lir)1 \, l \, r \, v : a_i := a_i \oplus v \quad (l \leq i \leq r)
  3. 2lrv:ai:=ai and v(lir)2 \, l \, r \, v : a_i := a_i \text{ and } v \quad (l \leq i \leq r)
  4. 3lrv:ai:=ai or v(lir)3 \, l \, r \, v : a_i := a_i \text{ or } v \quad (l \leq i \leq r)

عرفان باید عملیات های گفته شده را روی اعضای ارایه اعمال کند و در ازای هر نوع عملیات از نوع 00 جمع اعداد درون بازه خواسته شده را به ایلیا بگوید. اما از انجایی که عرفان خسته شده است، از شما می خواهد پاسخ سوالات ایلیا را بدهید.

ورودی🔗

در سطر اول به ترتیب عدد nn که طول آرایه است و در سطر بعد nn عدد که iiامین شان aia_i است می‌آید. در سطر بعد QQ می‌آید و در QQ سطر بعدی در هر سطر یک عملیات از ۴ عمليات ذکر شده می‌آید. 1n,Q1000001 \leq n, Q \leq 100\,000 1lrn1 \leq l \leq r \leq n 1ai,v10000001 \leq a_i , v \leq 1000\,000

خروجی🔗

در ازای هر عملیات از نوع 00 جمع اعداد درون بازه خواسته شده را خروجی دهید.

مثال🔗

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

4
1 2 4 8
5
1 2 3 8
3 1 1 8
0 1 3
2 1 4 8
0 2 4
Plain text

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

31
24
Plain text

نتیجه اعمال هر عملیات:

  1. a:[1,10,12,8]a : [1, 10, 12, 8]
  2. a:[9,10,12,8]a : [9, 10, 12, 8]
  3. print:9+10+12=31print : 9 + 10 + 12 = 31
  4. a:[8,8,8,8]a : [8, 8, 8, 8]
  5. print:8+8+8=24print : 8 + 8 + 8 = 24

مشترک


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

اهورا به عرفان nn رشته هدیه داده است که iiامین آن‌ها sis_i است. آرمین از عرفان qq سوال می‌پرسد. در پرسش iiام تعداد جفت yy و xxهایی را می‌خواهد که شرایط زیر را داشته باشند:

  1. 1x<ypi1 \leq x \lt y \leq p_i
  2. lilcp(sx,sy)ril_i \leq lcp(s_x, s_y) \leq r_i

فرض کنید ۲ رشته aa و bb داریم lcp(a,b)lcp(a, b) برابر است با طول بلند ترین پیشوند مشترک آن‌ها.

عرفان که همچنان خسته است باز هم از شما می‌خواهد تا جواب سوالات آرمین را بدهید.

ورودی🔗

در سطر اول عدد nn می‌آید و در nn سطر بعدی sis_i (رشته‌ها متشکل از حروف کوچک انگلیسی هستند) می‌آید. در سطر بعد qq می‌آید و در qq سطر بعد به ترتیب pip_i، lil_i و rir_i می‌آید. 1n5000001 \leq n \leq 500\,000 1q10000001 \leq q \leq 1000\,000 si500000\sum |s_i| \leq 500\,000 2pin2 \leq p_i \leq n 0liri10000000 \leq l_i \leq r_i \leq 1000\,000

خروجی🔗

در ازای پرسش ii تعداد زوج‌های نامرتب (x,y)(x, y) که در شرایط گفته شده صدق می‌کنند را خروجی دهید.

مثال🔗

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

3
abb
acd
abd
3
3 1 2
3 0 1
2 2 3
Plain text

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

3
2
0
Plain text
  • lcp(s1,s2)=1lcp(s_1, s_2) = 1
  • lcp(s2,s3)=1lcp(s_2, s_3) = 1
  • lcp(s1,s3)=2lcp(s_1, s_3) = 2

پرسش اول. در ۳ رشته‌ی اول هر ۳ جفت رشته‌ای که داریم lcplcp آن‌ها بین ۱ و ۲ است.

پرسش دوم‌. در ۳ رشته‌ی اول 0lcp(s1,s2)=lcp(s2,s3)10 \leq lcp(s_1, s_2) = lcp(s_2, s_3) \leq 1

پرسش سوم. در ۲ رشته‌ی اول lcp(s1,s2)<2lcp(s_1, s_2) \lt 2