QOJ.ac

QOJ

Limite de temps : 1 s Limite de mémoire : 2048 MB Points totaux : 100

#11366. SLA томографиясы

Statistiques

Стереолитография (SLA) — лазердің көмегімен сұйық материалды қабат-қабатымен қатты объектіге айналдырып қатыратын 3D басып шығару технологиясы. Бұл есепте біз SLA технологиясының 2D жеңілдетілген нұсқасын қарастырамыз, мұнда басып шығарылатын объектінің дизайнын # және . таңбаларынан тұратын тікбұрышты тор ретінде көрсетуге болады, мұндағы # объектімен толтырылған тор ұяшығын, ал . бос кеңістікті білдіреді. Мысалы, міне $4 \times 8$ өлшемді дизайн:

..#.....
..#..#..
#.#.##..
#.#####.

Дизайн міндетті түрде бір ғана байланысқан бөліктен тұруы шарт емес, бірақ дизайнның ең төменгі қатарындағы # ұяшықтарын қоспағанда, әрбір # ұяшығын оның дәл астында орналасқан басқа бір # ұяшығы тіреп тұруы тиіс.

SLA көмегімен объектіні басып шығару ең төменгі қатардан бастап қабат-қабатымен жүреді. Алдымен қатардағы барлық ұяшықтар сұйық жарықсезгіш шайырмен толтырылады. Содан кейін лазер қатарды бойлай өтіп, барлық # ұяшықтарындағы шайырды қатты денеге айналдырып қатырады да, барлық . ұяшықтарын өткізіп жібереді. Содан соң ең сол жақтағы # таңбасының сол жағындағы және ең оң жақтағы # таңбасының оң жағындағы артық сұйықтық ағып кетеді. Басқа сұйықтық ішінде қамалып қалады. (Егер қатарда # ұяшықтары мүлдем болмаса — бұл тек объект толығымен басып шығарылғаннан кейін, дизайнның жоғарғы жағына жақын қатарларда ғана болуы мүмкін — онда қатардағы барлық сұйықтық ағып кетеді.) Бұл процесс келесі әрбір қатар үшін қайталанады. Жоғарыдағы дизайн үшін басып шығару аяқталғаннан кейін, шайыр төменде ~ таңбасымен белгіленген барлық ұяшықтарда қамалып қалады:

..#.....
..#~~#..
#~#~##..
#~#####.

Объектіден қалған шайырды қолмен сорып алып жатып, сіз ойлана бастайсыз: басып шығарғаннан кейін дизайнның әр қатарында қанша сұйық шайыр қалғанын ғана біле отырып, бастапқы дизайнның қанша бөлігін қалпына келтіруге болады? Жоғарыдағы дизайн үшін әр қатарда (дизайнның ең жоғарғы жағынан бастап) қалған шайыр мөлшері — $0, 2, 2, 1$. Басқа дизайндарда да қалдық шайырдың дәл осындай ізі болуы мүмкін; мысалы:

....
#..#
#..#
#.##

Әр қатарда (ең жоғарғы қатардан бастап) қанша ұяшық сұйық шайыр қалғаны туралы тізім берілген, басып шығарғаннан кейін қатарларында дәл сондай мөлшерде сұйық шайыр қалатын ең енсіз объект дизайнының енін шығарыңыз. Егер мұндай дизайн болмаса, impossible деп шығарыңыз.

Кіріс деректер

Кіріс деректердің бірінші жолында бір бүтін сан $N$ ($1 \le N \le 10^5$) — объект дизайнындағы қатарлар саны берілген. Одан кейінгі $N$ жолдың әрқайсысында бір бүтін сан $x$ ($0 \le x \le 10^9$) — қажетті объект дизайнының әр қатарындағы қалған сұйық шайыр ұяшықтарының саны (жоғарыдан төмен қарай ретімен) берілген.

Кем дегенде бір қатарда кем дегенде бір ұяшық қалған сұйық шайыр болады.

Шығыс деректер

Әр қатардағы қалған сұйық шайыр ұяшықтарының саны кіріс деректерге сәйкес келетін ең енсіз объект дизайнының енін (бағандар санын) шығарыңыз. («Ең енсіз» дегеніміз мүмкін болатын ең аз бағандар санына ие дегенді білдіреді). Егер мұндай дизайн болмаса, оның орнына impossible деп шығарыңыз.

Мысалдар

Кіріс деректер 1

4
0
2
2
1

Шығыс деректер 1

4

Кіріс деректер 2

3
4
0
4

Шығыс деректер 2

11

Ескертпе

1-мысал жоғарыдағы мысалға сәйкес келеді. 2-мысал үшін мүмкін болатын ең енсіз дизайндардың бірі:

#....#.....
######.....
######....#

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.