QOJ.ac

QOJ

Süre Sınırı: 2 s Bellek Sınırı: 1024 MB Toplam puan: 100

#23979. مزيل JOI

İstatistikler

نص المسألة

توجد سلسلة نصية $S$ طولها $N$ تتكون من J و O و I. يكرر جوي-كون العملية التالية على السلسلة $S$ حتى يصبح من غير الممكن إجراء المزيد من العمليات:

  • اختر موضعاً $1$ في $S$ تظهر فيه الأحرف J و O و I متجاورة بهذا الترتيب، واستبدل ذلك الجزء بـ O و I و J بهذا الترتيب.

يمكن إثبات أن تكرار العمليات ينتهي دائماً، وأن الحالة النهائية للسلسلة النصية تتحدد بشكل فريد بغض النظر عن كيفية إجراء العمليات.

بإعطائك معلومات السلسلة الابتدائية $S$، اكتب برنامجاً لإيجاد السلسلة النهائية $S$.

القيود

  • $3 \le N \le 500000$.
  • $S$ سلسلة نصية طولها $N$ تتكون من J و O و I.
  • $N$ عدد صحيح.

المهام الفرعية

  1. ($14$ نقطة) $N \le 100$.
  2. ($27$ نقطة) $N$ من مضاعفات $3$، و $S$ عبارة عن تكرار JOI عدد $N / 3$ من المرات.
  3. ($29$ نقطة) يوجد عدد صحيح $k$ ($2 \le k \le N$) بحيث تكون الأحرف من الأول ($1$) إلى الـ $k$ في $S$ كلها J، بينما الحرف $(k + 1)$ وما بعده ليست J.
  4. ($30$ نقطة) لا توجد قيود إضافية.

الإدخال

يُعطى الإدخال من الإدخال القياسي بالتنسيق التالي:

N
S

الإخراج

اطبع السلسلة النهائية $S$ في سطر $1$ إلى الإخراج القياسي.

أمثلة

مدخل المثال 1

6
JOIJOI

مخرج المثال 1

OIOIJJ

على سبيل المثال، يمكن لجوي-كون إجراء العمليات كما يلي.

في البداية، $S =$ JOIJOI.

  1. إجراء العملية على الأحرف من $1$ إلى $3$. تصبح $S =$ OIJJOI.
  2. إجراء العملية على الأحرف من $4$ إلى $6$. تصبح $S =$ OIJOIJ.
  3. إجراء العملية على الأحرف من $3$ إلى $5$. تصبح $S =$ OIOIJJ.

بما أنه لا يمكن إجراء المزيد من العمليات، اطبع OIOIJJ.

مدخل هذا المثال يحقق قيود المهام الفرعية $1, 2, 4$.


مدخل المثال 2

8
JJJOIOIO

مخرج المثال 2

OIOIJJJO

مدخل هذا المثال يحقق قيود المهام الفرعية $1, 3, 4$.


مدخل المثال 3

20
JJOIJOIJOOIJOIIJJOIO

مخرج المثال 3

OIOIJJJJOOIOIJIOIJJO

مدخل هذا المثال يحقق قيود المهمتين الفرعيتين $1, 4$.

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.