جیغ زدن


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

دارا و سارا خواهر و برادر یکدیگر هستند. در مراسم سال نو، مادربزرگ برایشان nn عروسک خریده است. اندازه‌ی این عروسک‌ها از 11 تا nn هستند. 11 از همه کوچک‌تر و nn از همه بزرگ‌تر است. این nn عروسک برای هر دوی آن‌ها است و قرار است باهم بازی کنند.

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

  • اگر دارا یک عروسک بزرگ‌تر از عروسک‌هایی که تا الان آمده است را ببیند، جیغ می‌زند.
  • اگر سارا یک عروسک کوچک‌تر از عروسک‌هایی که تا الان آمده است ببیند جیغ می‌زند.

مثلاً بعد از آمدن عروسک اول، هر دوی آن‌ها جیغ می‌زنند.

توضیح تصویر

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

ورودی🔗

در تنها سطر ورودی، عدد صحیح و مثبت nn آمده که تعداد عروسک‌ها را نشان می‌دهد.

1n1001 \leq n \leq 100

خروجی🔗

در تنها سطر خروجی، کمینه مجموع تعداد جیغ دارا و سارا را چاپ کنید.

مثال‌ها🔗

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

1
Plain text

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

2
Plain text

در این حالت مادر بزرگ فقط یک عروسک دارد، و با نشان دادن آن، دارا و سارا هر دو جیغ می‌زنند. پس تعداد جیغ‌ها برابر 22 خواهد بود.


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

2
Plain text

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

3
Plain text

در این حالت مادر بزرگ می‌تواند:

  • در مرحله اول عروسک، 11 را نشان دهد و دارا و سارا با دیدن آن هر دو جیغ می‌زنند.
  • در مرحله دوم عروسک، 22 را نشان دهد و دارا با دیدن این عروسک یک جیغ می‌زند.

بنابراین مجموع جیغ‌ها 2+1=32 + 1 = 3 خواهد بود.


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

3
Plain text

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

3
Plain text

در این حالت مادر بزرگ می‌تواند:

  • در مرحله اول عروسک، 11 را نشان دهد و دارا و سارا با دیدن آن هر دو جیغ می‌زنند.
  • در مرحله دوم عروسک، 33 را نشان دهد و دارا با دیدن این عروسک یک جیغ می‌زند.
  • در مرحله سوم عروسک، 22 را نشان دهد و هیچ کدام با دیدن آن جیغ نمی‌زنند.

بنابراین مجموع جیغ‌ها 2+1+0=32 + 1 + 0 = 3 خواهد بود.


تردستی


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

«دکارتی» تردستی ماهر است. وقتی دست دکارتی از روی کارتی رد شود، کارت برعکس می‌شود. (یعنی اگر کارت رو باشد پشت می‌شود و اگر پشت باشد رو می‌شود.) آقای دکارتی می‌خواهد tt روز متوالی تردستی کند. در هر روز تعدادی کارت پیش روی او است و او در یک عملیات می‌تواند بازه‌ای دلخواه و متوالی از کارت‌ها را برعکس کند. او می‌خواهد حداقل تعداد عملیات که همه کارت‌ها به سمت رو تبدیل شوند را بداند!

توضیح تصویر

ورودی🔗

در خط اول tt می‌آید که نشان دهنده تعداد روزهایی است که آقای دکارتی تردستی می‌کند. 1t10001 \leq t \leq 1000

در tt خط بعد، در هر کدام یک رشته می‌آید که حرف iiام آن اگر 1 باشد یعنی کارت iiام رو است و اگر 0 باشد یعنی کارت iiام به پشت قرار دارد.

تعداد کارت‌های هر روز حداکثر ۵۰ است.

خروجی🔗

در خط iiام از tt خط جواب مساله را خروجی دهید.

مثال🔗

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

5
01
00010
11011
111000
101010101
Plain text

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

1
2
1
1
4
Plain text
  • در روز اول بازه‌ی [1,1][1,1] را برعکس کند.
  • در روز دوم بازه‌های [4,4][4,4] و [1,5][1,5] را برعکس کند.
  • در روز سوم بازه‌ی [3,3][3,3] را برعکس کند.
  • در روز چهارم بازه‌ی [4,6][4, 6] را برعکس کند.
  • در روز پنجم بازه‌های [2,2][2, 2]، [4,4][4, 4]، [6,6][6 ,6] و [8,8][8 ,8] را برعکس کند.

جزوه درسی


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

امین در کلاس درس «قضیه سیلو و نظریه گالوا» شرکت کرده است. دکتر طالب در این کلاس nn فایل pdf جزوه برای دانشجویان ارسال کرده است. فایل iiام مربوط به جلسه iiام است. جلسات به ترتیب تدریس شده‌اند و جزوه هر درس بلافاصله بعد از پایان آن کلاس روی سامانه قرار گرفته است. می‌دانیم امین هم جزوه هر درس را بلافاصله بعد از قرار گرفتن در سامانه دانلود کرده و در یک پوشه مخصوص جزوه‌های این درس ذخیره کرده است.

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

یعنی اگر امتحان میان‌ترم بین جلسات mm (1mn11 \le m \le n - 1) و جلسه m+1m + 1 کلاس برگزار شود، امین برای درس خواندن، تمام جزوه‌های مربوط به جلسه 11 تا mm را به هم می‌چسباند و یک فایل جدید درست می‌کند. (تا راحت‌تر مطالعه کند.)

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

توضیح تصویر

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

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

حال از شما می‌خواهیم با داشتن حجم این n+2n + 2 فایل، حجم جزوه میان‌ترم و پایان ترم را مشخص کنید.

ورودی🔗

در سطر اول ورودی عدد صحیح و مثبت nn داده می‌شود. که نشان‌دهنده‌ی تعداد جلسات تدریس است. 1n1000001 \le n \le 100 \, 000 در سطر دوم ورودی n+2n + 2 عدد صحیح و مثبت a1,a2,,an+2a_1, a_2, \dots, a_{n + 2} آمده که حجم فایل‌های امین را نشان می‌دهد. 1ai1091 \le a_i \le 10^9

تضمین می‌شود همواره جوابی برای این مسئله وجود دارد.

خروجی🔗

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

مثال‌ها🔗

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

2
11 5 6 5
Plain text

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

5 11
Plain text

اگر فرض کنیم حجم فایل جلسه اول 55 و جلسه دوم 66 باشد و میان‌ترم بین این دو جلسه برگزار شده باشد، حجم فایل میان‌ترم 55 و حجم فایل پایان ترم 5+6=115 + 6 = 11 خواهد بود.

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

6
1 2 3 6 4 5 6 21 
Plain text

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

6 21
Plain text

اگر فرض کنیم، حجم فایل جلسه‌ی kkام برابر kk باشد. (برای هر 1k51 \leq k \leq 5) و امتحان میان ترم بین دو جلسه‌ی سوم و چهارم برگزار شود، حجم فایل میان‌ترم برابر 1+2+3=61 + 2 + 3 = 6 و پایان ترم برابر 1+2+3+4+5+6=211 + 2 + 3 + 4 + 5 + 6 = 21 خواهد بود.

چشم‌نواز


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

سال رو به اتمام است و شرکت کوئرا قصد دارد نمای ساختمان خود را چشم‌نواز کند. سایر شرکت‌ها هم که کوئرا الگوی آنهاست تصمیم مشابهی می‌گیرند. نمای هر ساختمان nn طبقه به عرض mm از n×mn\times m پنجره تشکیل شده یعنی نمای هر طبقه از mm پنجره متوالی به عرض ۱ تشکیل شده است.

حال شرکت‌ها می‌خواهند تمام پنجره‌های خود را رنگ کنند و برای رنگ‌آمیزی هر پنجره می‌توانند تنها از ۴ رنگ قرمز و آبی و سبز و زرد استفاده کنند ولی توجه کنید که هر رنگ‌آمیزی چشم‌نواز نیست و رنگ آمیزی چشم نواز است که هیچ دو پنجره همرنگی اشتراک با هم نداشته باشند! می‌گوییم دو پنجره با هم اشتراک دارند اگر حداقل یکی از ۴ گوش یک پنجره گوشه پنجره دیگر نیز باشد.

توضیح تصویر

حال مدیر هر شرکت مایل است بداند چند رنگ‌آمیزی چشم‌نواز برای نمای شرکتش وجود دارد! از آنجا که ممکن است این عدد بزرگ باشد باقی‌مانده جواب بر 109+710^9 + 7 را خروجی دهید.

ورودی🔗

در خط اول tt نشان‌دهنده تعداد شرکت‌ها می‌آید. 1t200000 1 \leq t \leq 200 \, 000 در tt خط بعد در هر کدام به ترتیب دو عدد nin_i و mim_i می‌آید که به ترتیب نشان دهند تعداد طبقات و عرض شرکت iiام است. 1ni,mi500000 1 \le n_i, m_i \le 500\, 000

خروجی🔗

در خط iiام از tt خط خروجی جواب مساله را خروجی دهید.

مثال🔗

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

4
1 3
2 2
3 3
187563 196327
Plain text

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

36
24
72
814094109
Plain text

مهره در گونی


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

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

او می‌خواهد در mm عملیات در این گونی‌ها مهره بریزد. او در عملیات iiام سه عدد lil_i، rir_i و xix_i را انتخاب می‌کند و سپس در همه‌ی گونی‌های بازه‌ی [li,ri][l_i, r_i] یک مهره xix_i می‌اندازد.

توضیح تصویر

آقای هاشمی می‌خواهد بعد از پایان این mm عملیات، برای هر گونی، کوچک‌ترین عددی که هیچ مهره‌ای با آن شماره در آن گونی نیست را حساب کند.

ورودی🔗

در سطر اول ورودی دو عدد صحیح nn و mm که با یک فاصله از هم جدا شده‌اند آمده است. 1n,m5000001 \leq n, m \leq 500 \, 000 در mm سطر بعدی در هر سطر، سه عدد lil_i، rir_i و xix_i که با یک فاصله از هم جدا شده‌اند به ترتیب می‌آیند.

1lirin,1xi1091 \leq l_i \leq r_i \leq n, \quad \quad 1 \leq x_i \leq 10^9

خروجی🔗

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

مثال🔗

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

3 2
1 2 1
2 3 2
Plain text

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

2 3 1
Plain text

بعد از پایان این عملیات‌ها وضعیت مهره‌ها در هر گونی به صورت زیر است:

  • گونی 11: {1}\{1\}
  • گونی 22: {2,1}\{2, 1\}
  • گونی 33: {2}\{2\}

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

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

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

3 4 5 1 4
Plain text

بعد از پایان این عملیات‌ها وضعیت مهره‌ها در هر گونی به صورت زیر است:

  • گونی 11: {1,1,2}\{1, 1, 2\}
  • گونی 22: {1,1,3,2}\{1, 1, 3, 2\}
  • گونی 33: {1,4,3,2,3}\{1, 4, 3, 2, 3\}
  • گونی 44: {5,3,2,3}\{5, 3, 2, 3\}
  • گونی 55: {1,5,3,2}\{1, 5, 3, 2\}

فیل‌های دعوایی


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

یک صفحه شطرنج به صورت یک جدول n×mn \times m داریم. سطرهای آن به ترتیب از بالا به پایین با اعداد 11 تا nn و ستون‌های آن به ترتیب از چپ به راست با اعداد 11 تا mm شماره گذاری شده است.

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

توضیح تصویر

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

ورودی🔗

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

1n,m4001 \le n,m \le 400

در nn خط بعد در هر خط یک رشته به طول mm متشکل از . و # می‌آید. اگر حرف jjام رشته iiام # باشد یعنی خانه‌ی سطر iiام و ستون jjام با مانع پر شده است و در غیر ایصورت اگر . باشد یعنی آن خانه خالی است.

خروجی🔗

در سطر اول خروجی، عدد صحیح kk که نشان‌دهنده‌ی حداکثر تعداد فیل است را چاپ کنید.

در kk سطر بعدی، در هر سطر دو عدد صحیح rir_i و cic_i که با یک فاصله از هم جدا شده‌اند و به ترتیب نشان‌دهنده‌ی شماره‌ی سطر و ستون فیل iiام است را چاپ کنید.

مثال‌ها🔗

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

4 11
...#..#....
.#.##.#....
...#.##....
####..#....
Plain text

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

16
1 1
1 3
1 5
1 6
1 8
1 9
1 10
2 1
2 3
3 1
3 3
3 5
4 5
4 8
4 9
4 10
Plain text

توضیح تصویر

خانه‌های سفید خالی، خانه‌های سیاه مانع و خانه‌های سبز فیل هستند.


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

10 10
.....#....
.#......#.
.#...#....
.....#....
..........
#....#.#..
.........#
#......#..
...#...#..
.....#....
Plain text

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

27
1 1
1 3
1 4
1 8
1 9
1 10
2 1
3 1
3 3
3 10
4 1
4 3
4 7
4 10
5 7
5 10
6 10
7 1
7 2
7 7
8 4
8 9
8 10
9 1
10 3
10 9
10 10
Plain text

توضیح تصویر


رنگ آمیزی


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

می‌خواهیم تمام نقاط صحیح محور مختصات را با nn رنگ متفاوت، رنگ کنیم.

می‌دانیم طول تناوب رنگ ii ام lil_i است، به این معنی که اگر هر نقطه‌ای مانند xx را با رنگ iiام رنگ کنیم، باید نقاط x+lix+l_i و xlix-l_i نیز حتما به رنگ iiام باشند.

از شما خواسته شده است تا بگویید چند روش متفاوت برای این رنگ‌آمیزی وجود دارد. تضمین می‌شود با وجود اینکه تعداد نقاط صحیح محور مختصات نامتناهی است، تعداد روش‌ها متناهی خواهد بود.

از آنجایی که جواب نهایی می‌تواند بسیار بزرگ باشد، کافی است باقی مانده‌ی پاسخ را بر 109+710^9+7 چاپ کنید.

ورودی🔗

در اولین خط از ورودی مقدار nn به شما داده شده است.

1n1061 \le n \le 10^6

در خط بعدی nn عدد آمده است که عدد iiام نمایانگر مقدار lil_i است.

1li1061 \le l_i \le 10^6

خروجی🔗

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

مثال🔗

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

3
1 1 1
Plain text

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

3
Plain text

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

4
1 2 4 4
Plain text

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

26
Plain text

تقسیم منصفانه


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

چهار ریاضی‌دان که می‌دانند از ریاضی چیزی کاسب نمی‌شوند تصمیم به جمع آوری گردو‌های روی زمین می‌گیرند! به طور مشخص زمین را صفحه مختصات دوبعدی و هرگردو را می‌توانید یک نقطه با مختصات صحیح فرض کنید. حال برای جلوگیری از دعوای احتمالی تصمیم می‌گیرند که زمین را ۴ بخش کنند که در هر بخش تعداد یکسانی گردو باشد. آنها می‌خواهند از دو خط متقاطع برای بخش‌بندی زمین استفاده کنند. برای حل حالت‌های مختلف به آنها کمک کنید \dots

ورودی🔗

در خط اول ورودی tt یا تعداد سناریوهای مختلف برای باغ گردو می‌آید. سپس در خطوط بعد tt تست به شرح زیر می‌آید.

1t1001 \leq t \leq 100

در خط اول هر سناریو nn یا تعداد گردوها می‌آید و در nn خط بعد هر کدام دو عدد xix_i و yiy_i نشان دهنده مختصات یک گردو می‌آید. تضمین می‌شود در یک سناریو دو گردو در یک نقطه نباشند. 1n100 1 \le n \le 100 xi,yi105 |x_i|, |y_i| \le 10^5

خروجی🔗

برای هر سناریو معادله دو خط را در خطوط متوالی خروجی دهید. توجه کنید نباید گردویی روی خطوط قرار بگیرد و همچنین تضمین می‌شود برای سناریوهای موجود در ورودی حتما دو خط با خاصیت گفته شده موجود است. برای خروجی خطی که معادله نظیرش a×x+b×y+c=0a\times x + b \times y + c = 0 است کافی است سه عدد aa و bb و cc را با فاصله و به ترتیب چاپ کنید به طوری که : a,b,c109 |a|, |b|, |c| \le 10^9 سه عدد خروجی می‌توانند تا ۹ رقم اعشار داشته باشند.

مثال🔗

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

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

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

0.000 1.000 -0.500
1.000 0.000 -0.500
0.200 1.000 -2.500
1.000 0.000 -2.500
Plain text

تصویر سناریو اول:

توضیح تصویر

تصویر سناریو دوم:

توضیح تصویر