Задача А. АВС-строка по номеру Задача В. Номер по

advertisement
Êðóæîê îáó÷åíèÿ ìàñòåðñòâó ïðîãðàììèðîâàíèÿ ïðè ÑÏáÃÓ, ãðóïïà A1
Ïÿòîå çàíÿòèå: âñåãî ïîíåìíîãó, ñðåäà, 21 îêòÿáðÿ 2009 ãîäà
Çàäà÷à A. ABC-ñòðîêà ïî íîìåðó
Èìÿ âõîäíîãî ôàéëà:
abcstring.in
abcstring.out
Èìÿ âûõîäíîãî ôàéëà:
Îãðàíè÷åíèå ïî âðåìåíè:
2 ñåêóíäû
Îãðàíè÷åíèå ïî ïàìÿòè:
256 Ìåáèáàéò
 ýòîé çàäà÷å ìû áóäåì ðàññìàòðâàòü çàìîùåíèÿ ïðÿìîóãîëüíèêà 1 × n ïëèòêàìè ðàçìåðîâ 1 × 3, 1 × 2 è 1 × 1.
Çàïèñûâàòü çàìîùåíèå ìîæíî â âèäå ñòðîêè èç n ñèìâîëîâ: åñëè k -ÿ êëåòêà ïîêðûòà ïëèòêîé ðàçìåðà 1 × 3, òî
k -é áóêâîé ñòðîêè áóäåò `a', åñëè ïëèòêîé ðàçìåðà 1 × 2,
òî `b', à åñëè ïëèòêîé ðàçìåðà 1×1, òî `c'. Íàïðèìåð, åñëè
ïðÿìîóãîëüíèê 1 × 7 çàìîñòèòü ïëèòêàìè 1 × 3, 1 × 2, 1 × 1
è 1 × 1 â óêàçàííîì ïîðÿäêå, òî çàïèñûâàòü ýòî çàìîùåíèå ìû áóäåì ñòðîêîé aaabbcc. Î÷åâèäíî, òàêàÿ çàïèñü
îäíîçíà÷íî ñîîòâåòñòâóåò çàìîùåíèþ.
Äëÿ äàííîãî n ðàññìîòðèì çàïèñè âñåõ çàìîùåíèé ïðÿìîóãîëüíèêà 1 × n è óïîðÿäî÷èì èõ ëåêñèêîãðàôè÷åñêè
ïî âîçðàñòàíèþ. Âûâåäèòå çàïèñü k -ãî â ýòîì ïîðÿäêå çàìîùåíèÿ. Çàìîùåíèÿ íóìåðóþòñÿ, íà÷èíàÿ ñ åäèíèöû.
Ôîðìàò âõîäíûõ äàííûõ
 ïåðâîé ñòðîêå âõîäíîãî ôàéëà çàäàíû äâà öåëûõ ÷èñëà n è k ÷åðåç ïðîáåë äëèíà ñòðîêè è íîìåð òðåáóåìîãî
çàìîùåíèÿ, ñîîòâåòñòâåííî (1 6 n 6 35). Ãàðàíòèðóåòñÿ,
÷òî çàìîùåíèå ñ íîìåðîì k ñóùåñòâóåò.
Ôîðìàò âûõîäíûõ äàííûõ
 ïåðâîé ñòðîêå âûõîäíîãî ôàéëà âûâåäèòå ñòðîêó,
ñîñòîÿùóþ èç áóêâ `a', `b' è `c' çàïèñü k -ãî çàìîùåíèÿ
ïðÿìîóãîëüíèêà 1 × n.
Ïðèìåðû
3 2
7 3
abcstring.in
abcstring.out
bbc
aaabbcc
Çàäà÷à B. Íîìåð ïî ABC-ñòðîêå
Èìÿ âõîäíîãî ôàéëà:
abcstringr.in
Èìÿ âûõîäíîãî ôàéëà:
abcstringr.out
Îãðàíè÷åíèå ïî âðåìåíè:
2 ñåêóíäû
Îãðàíè÷åíèå ïî ïàìÿòè:
256 Ìåáèáàéò
 ýòîé çàäà÷å ìû áóäåì ðàññìàòðâàòü çàìîùåíèÿ ïðÿìîóãîëüíèêà 1 × n ïëèòêàìè ðàçìåðîâ 1 × 3, 1 × 2 è 1 × 1.
Çàïèñûâàòü çàìîùåíèå ìîæíî â âèäå ñòðîêè èç n ñèìâîëîâ: åñëè k -ÿ êëåòêà ïîêðûòà ïëèòêîé ðàçìåðà 1 × 3, òî
k -é áóêâîé ñòðîêè áóäåò `a', åñëè ïëèòêîé ðàçìåðà 1 × 2,
òî `b', à åñëè ïëèòêîé ðàçìåðà 1×1, òî `c'. Íàïðèìåð, åñëè
ïðÿìîóãîëüíèê 1 × 7 çàìîñòèòü ïëèòêàìè 1 × 3, 1 × 2, 1 × 1
è 1 × 1 â óêàçàííîì ïîðÿäêå, òî çàïèñûâàòü ýòî çàìîùåíèå ìû áóäåì ñòðîêîé aaabbcc. Î÷åâèäíî, òàêàÿ çàïèñü
îäíîçíà÷íî ñîîòâåòñòâóåò çàìîùåíèþ.
Äëÿ äàííîãî n ðàññìîòðèì çàïèñè âñåõ çàìîùåíèé ïðÿìîóãîëüíèêà 1 × n è óïîðÿäî÷èì èõ ëåêñèêîãðàôè÷åñêè
ïî âîçðàñòàíèþ. Ïî äàííîé çàïèñè çàìîùåíèÿ íàéäèòå
åãî íîìåð â ýòîì ïîðÿäêå. Çàìîùåíèÿ íóìåðóþòñÿ, íà÷èíàÿ ñ åäèíèöû.
Ôîðìàò âõîäíûõ äàííûõ
 ïåðâîé ñòðîêå âõîäíîãî ôàéëà çàäàíà çàïèñü çàìîùåíèÿ. Îíà ñîñòîèò òîëüêî èç ñèìâîëîâ `a', `b' è `c', à å¼
äëèíà ëåæèò â ïðåäåëàõ îò 1 äî 35 ñèìâîëîâ. Ãàðàíòèðóåòñÿ, ÷òî äàííàÿ çàïèñü çàìîùåíèÿ êîððåêòíà.
Ôîðìàò âûõîäíûõ äàííûõ
 ïåðâîé ñòðîêå âûõîäíîãî ôàéëà âûâåäèòå îäíî ÷èñëî íîìåð äàííîãî çàìîùåíèÿ ñðåäè âñåõ çàìîùåíèé
ïðÿìîóãîëüíèêà 1 × n, ãäå n äëèíà çàïèñè ýòîãî çàìîùåíèÿ.
Ïðèìåðû
abcstringr.in
bbc
aaabbcc
2
3
abcstringr.out
Çàäà÷à C. Øåëêîïðÿäû
Èìÿ âõîäíîãî ôàéëà:
bombyx.in
Èìÿ âûõîäíîãî ôàéëà:
bombyx.out
Îãðàíè÷åíèå ïî âðåìåíè:
2 ñåêóíäû
Îãðàíè÷åíèå ïî ïàìÿòè:
256 Ìåáèáàéò
Áèîëîã Þëÿ èçó÷àåò è êëàññèôèöèðóåò øåëêîïðÿäîâ.
Êàæäûé øåëêîïðÿä õàðàêòåðèçóåòñÿ êîëè÷åñòâîì ïÿòíûøåê íà òåëå, à òàêæå êîëè÷åñòâîì øèøå÷åê íà ãîëîâå;
êðîìå òîãî, ïÿòíûøêè è øèøå÷êè îáðàçóþò ðàçëè÷íûå
ðèñóíêè.
Âíèìàòåëüíî èçó÷èâ øåëêîïðÿäîâ ñ íåáîëüøèì êîëè÷åñòâîì ïÿòíûøåê è øèøå÷åê, Þëÿ ïðèøëà ê âûâîäó,
÷òî äëÿ ëþáûõ n è k êîëè÷åñòâî ðàçëè÷íûõ ðèñóíêîâ,
êîòîðûå ìîæíî íàáëþäàòü íà øåëêîïðÿäå ñ n ïÿòíûøêàìè è k øèøå÷êàìè, êîíå÷íî. Þëÿ ðåøèëà îáîçíà÷èòü
ýòî êîëè÷åñòâî êàê f (n, k).
Ïðèñòóïèâ ê èçó÷åíèþ øåëêîïðÿäîâ ñ áî ëüøèì ÷èñëîì ïÿòíûøåê è øèøå÷åê, Þëÿ îáíàðóæèëà, ÷òî óæå íå
âñåãäà ìîæåò ñêàçàòü, ÷òî âèäåëà âñå ðàçëè÷íûå ðèñóíêè íà øåëêîïðÿäàõ ñ òàêèìè õàðàêòåðèñòèêàìè. ×òîáû
áûòü óâåðåííîé, ÷òî íè îäèí ðèñóíîê íå óñêîëüçíóë îò å¼
âíèìàíèÿ, îíà ðåøèëà âûâåñòè çàêîíîìåðíîñòü äëÿ ÷èñåë f (n, k). Îáîáùàÿ ïîëó÷åííûå äàííûå, Þëÿ âûäâèíóëà ñëåäóþùóþ ãèïîòåçó:

0,
n < 0 èëè k < 0


 1,
k=0
f (n, k) =
k
P


f (n − 2k − i, 2i) â îñòàëüíûõ ñëó÷àÿõ

i=0
Íàïèøèòå ïðîãðàììó, êîòîðàÿ ïî çàäàííûì çíà÷åíèÿì
n è k áóäåò âû÷èñëÿòü f (n, k) â ñîîòâåòñòâèè ñ ýòîé ãèïîòåçîé. Åñëè çíà÷åíèå f (n, k) áóäåò ñëèøêîì âåëèêî, Þëÿ
áóäåò èñïîëüçîâàòü äëÿ ïðîâåðêè òîëüêî åãî ïîñëåäíèå
äåâÿòü öèôð, ïîýòîìó îòâåò ñëåäóåò âûâîäèòü ïî ìîäóëþ
109 .
Ôîðìàò âõîäíûõ äàííûõ
 ïåðâîé ñòðîêå âõîäíîãî ôàéëà çàäàíû äâà öåëûõ ÷èñëà n è k ÷åðåç ïðîáåë êîëè÷åñòâî ïÿòíûøåê è øèøå÷åê
(0 6 n, k 6 4000).
Ôîðìàò âûõîäíûõ äàííûõ
 ïåðâîé ñòðîêå âûõîäíîãî ôàéëà âûâåäèòå îäíî ÷èñëî
f (n, k) êîëè÷åñòâî ðàçëè÷íûõ ðèñóíêîâ, êîòîðûå ìîæíî íàáëþäàòü íà øåëêîïðÿäå ñ n ïÿòíûøêàìè è k øèøå÷êàìè ñîãëàñíî Þëèíîé ãèïîòåçå, ïî ìîäóëþ 109 .
Ïðèìåðû
1 0
1 1
Ñòðàíèöà 1 èç 2
bombyx.in
1
0
bombyx.out
Êðóæîê îáó÷åíèÿ ìàñòåðñòâó ïðîãðàììèðîâàíèÿ ïðè ÑÏáÃÓ, ãðóïïà A1
Ïÿòîå çàíÿòèå: âñåãî ïîíåìíîãó, ñðåäà, 21 îêòÿáðÿ 2009 ãîäà
Çàäà÷à D. Äîìèíîøêè
Èìÿ âõîäíîãî ôàéëà:
dominoes.in
dominoes.out
Èìÿ âûõîäíîãî ôàéëà:
Îãðàíè÷åíèå ïî âðåìåíè:
2 ñåêóíäû
Îãðàíè÷åíèå ïî ïàìÿòè:
256 Ìåáèáàéò
Çàäàíà ïðÿìîóãîëüíàÿ äîñêà, íåêîòîðûå êëåòêè êîòîðîé âûðåçàíû. Îïðåäåëèòå, ìîæíî ëè ïîêðûòü îñòàâøèåñÿ êëåòêè äîìèíîøêàìè.
Ôîðìàò âõîäíûõ äàííûõ
 ïåðâîé ñòðîêå âõîäíîãî ôàéëà çàäàíû äâà öåëûõ ÷èñëà m è n (1 6 m, n 6 40) ðàçìåðû äîñêè. Êàæäàÿ èç
ñëåäóþùèõ m ñòðîê ñîäåðæèò ïî n ñèìâîëîâ. i-ûé ñèìâîë
j -îé èç ýòèõ ñòðîê ðàâåí `X' (èêñ áîëüøîå), åñëè êëåòêà
âûðåçàíà, è `.' (òî÷êà), åñëè îíà ïóñòà.
Ôîðìàò âûõîäíûõ äàííûõ
Âûâåäèòå â âûõîäíîé ôàéë YES, åñëè äîñêó ìîæíî
ïîêðûòü äîìèíîøêàìè, è NO â ïðîòèâíîì ñëó÷àå.
Ïðèìåðû
2 3
...
XXX
3 2
.X
..
X.
dominoes.in
NO
dominoes.out
YES
ïîêðûòèå ñóùåñòâóåò, â ñëåäóþùèõ m ñòðîêàõ âûâåäèòå
çàïèñü ëåêñèêîãðàôè÷åñêè ìèíèìàëüíîãî ïîêðûòèÿ.
Ïðèìåðû
2 3
...
XXX
3 2
.X
..
X.
lexdominoes.in
NO
lexdominoes.out
YES
BX
BB
XB
Çàäà÷à F. Ìàêñèìàëüíîå ïàðîñî÷åòàíèå
Èìÿ âõîäíîãî ôàéëà:
matching.in
Èìÿ âûõîäíîãî ôàéëà:
matching.out
Îãðàíè÷åíèå ïî âðåìåíè:
2 ñåêóíäû
Îãðàíè÷åíèå ïî ïàìÿòè:
256 Ìåáèáàéò
Ãðàô (V, E) íàçûâàåòñÿ äâóäîëüíûì, åñëè ìíîæåñòâî
åãî âåðøèí V ìîæíî ðàçáèòü íà äâà ïîäìíîæåñòâà A è
B òàêèå, ÷òî ëþáîå ðåáðî èç E ñîåäèíÿåò âåðøèíó èç A
ñ âåðøèíîé èç B .
Ïàðîñî÷åòàíèåì P íàçûâàåòñÿ ëþáîå ïîäìíîæåñòâî E
òàêîå, ÷òî íèêàêèå äâà ðåáðà èç íåãî íå èìåþò îáùåé
âåðøèíû.
Ìàêñèìàëüíîå ïàðîñî÷åòàíèå ýòî ïàðîñî÷åòàíèå,
÷èñëî ð¼áåð â êîòîðîì ìàêñèìàëüíî.
Íàéäèòå ìàêñèìàëüíîå ïàðîñî÷åòàíèå â çàäàííîì äâóäîëüíîì ãðàôå.
Çàäà÷à E. Ëåêñèêîãðàôè÷åñêè ìèíèìàëüíîå ïîêðûòèå äîìèíîøêàìè Ôîðìàò âõîäíûõ äàííûõ
Èìÿ âõîäíîãî ôàéëà:
lexdominoes.in
Èìÿ âûõîäíîãî ôàéëà:
lexdominoes.out
Îãðàíè÷åíèå ïî âðåìåíè:
2 ñåêóíäû
Îãðàíè÷åíèå ïî ïàìÿòè:
256 Ìåáèáàéò
Çàäàíà ïðÿìîóãîëüíàÿ äîñêà, íåêîòîðûå êëåòêè êîòîðîé âûðåçàíû. Îïðåäåëèòå, ìîæíî ëè ïîêðûòü îñòàâøèåñÿ êëåòêè äîìèíîøêàìè. Åñëè ýòî ìîæíî ñäåëàòü, âûâåäèòå ïîêðûòèå, çàïèñü êîòîðîãî ëåêñèêîãðàôè÷åñêè ìèíèìàëüíà.
Çàïèñü ïîêðûòèÿ ïîëó÷àåòñÿ çàïèñûâàíèåì äîñêè â âèäå ïðÿìîóãîëüíèêà ñëåäóþùèì îáðàçîì:
• âûðåçàííàÿ êëåòêà çàïèñûâàåòñÿ ñèìâîëîì `X';
• ãîðèçîíòàëüíàÿ äîìèíîøêà çàïèñûâàåòñÿ äâóìÿ
èäóùèìè ïîäðÿä ñèìâîëàìè `A';
• ãîðèçîíòàëüíàÿ äîìèíîøêà çàïèñûâàåòñÿ äâóìÿ
ñòîÿùèìè îäèí íàä äðóãèì ñèìâîëàìè `B'.
Ôîðìàò âõîäíûõ äàííûõ
 ïåðâîé ñòðîêå âõîäíîãî ôàéëà çàäàíû äâà öåëûõ ÷èñëà m è n (1 6 m, n 6 40) ðàçìåðû äîñêè. Êàæäàÿ èç
ñëåäóþùèõ m ñòðîê ñîäåðæèò ïî n ñèìâîëîâ. i-ûé ñèìâîë
j -îé èç ýòèõ ñòðîê ðàâåí `X' (èêñ áîëüøîå), åñëè êëåòêà
âûðåçàíà, è `.' (òî÷êà), åñëè îíà ïóñòà.
 ïåðâîé ñòðîêå âõîäíîãî ôàéëà çàäàíû òðè ÷èñëà m
è n è k (1 6 m, n 6 100, 1 6 k 6 10 000), ãäå m ÷èñëî
âåðøèí â ìíîæåñòâå A, n ÷èñëî âåðøèí â B , à k êîëè÷åñòâî ð¼áåð â ãðàôå. Êàæäàÿ èç ñëåäóþùèõ k ñòðîê
ñîäåðæèò ïî äâà ÷èñëà ui è vi , îçíà÷àþùèõ, ÷òî âåðøèíà
ui ìíîæåñòâà A ñîåäèíåíà ðåáðîì ñ âåðøèíîé vi ìíîæåñòâà B . Âåðøèíû âî ìíîæåñòâàõ A è B íóìåðóþòñÿ ïî
îòäåëüíîñòè, íà÷èíàÿ ñ åäèíèöû. Âñå ÷èñëà âî âõîäíîì
ôàéëå öåëûå.
Ôîðìàò âûõîäíûõ äàííûõ
 ïåðâîé ñòðîêå âûõîäíîãî ôàéëà âûâåäèòå ÷èñëî l êîëè÷åñòâî ð¼áåð â ìàêñèìàëüíîì ïàðîñî÷åòàíèè. Äàëåå
âûâåäèòå l ñòðîê, ïî äâà ÷èñëà â êàæäîé. ×èñëà aj è bj ,
ñòîÿøèå â j -îé èç ýòèõ ñòðîê, îçíà÷àþò, ÷òî â ïàðîñî÷åòàíèå âçÿòî ðåáðî ìåæäó âåðøèíîé aj ìíîæåñòâà A è
âåðøèíîé bj ìíîæåñòâà B . Âçÿòûå ð¼áðà äîëæíû îáðàçîâûâàòü ìàêñèìàëüíîå ïàðîñî÷åòàíèå.
Ïðèìåð
2
1
1
2
2
matching.in
3 4
1
2
2
3
Ôîðìàò âûõîäíûõ äàííûõ
Âûâåäèòå â âûõîäíîé ôàéë YES, åñëè äîñêó ìîæíî
ïîêðûòü äîìèíîøêàìè, è NO â ïðîòèâíîì ñëó÷àå. Åñëè
Ñòðàíèöà 2 èç 2
2
1 1
2 3
matching.out
Download