QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 1024 MB Total points: 100

#4632. Ás das cartas

Statistics

Existem $n$ baralhos de cartas na mesa. O $i$-ésimo baralho consiste em $a_i$ cartas, e a $j$-ésima carta de cima para baixo é $s_{i,j}$. Para simplificar o problema, consideramos apenas cartas altas e baixas. Se a carta for alta, $s_{i,j}=1$. Se for baixa, $s_{i,j}=0$.

Há $m$ jogadores sentados à volta da mesa à espera de um jogo de cartas. Você é quem distribui as cartas e a sua tarefa é empilhar todos os baralhos numa única pilha grande. Só pode controlar a ordem entre os baralhos. Não pode inserir nem remover cartas, nem alterar a ordem das cartas dentro de um baralho.

Depois de formar a pilha, as cartas serão distribuídas aos jogadores. O $i$-ésimo jogador receberá as cartas nas posições $i$, $m+i$, $2m+i$, $\ldots$, $km+i$, $\ldots$, de cima para baixo. Os outros jogadores não sabem que o $b$-ésimo jogador é, na verdade, o seu chefe. Para garantir a vitória, todas as cartas dadas ao seu chefe devem ser altas e todas as cartas dadas aos outros jogadores devem ser baixas.

Encontre uma ordem para empilhar os baralhos que cumpra este requisito ou indique que isso é impossível. Se existir uma resposta válida, indique a resposta lexicograficamente menor.

A resposta, se existir, é obviamente uma permutação de comprimento $n$. Dizemos que a permutação $P=p_1,p_2,\ldots,p_n$ é lexicograficamente menor do que a permutação $Q=q_1,q_2,\ldots,q_n$ se existir um inteiro $t$ tal que $p_i=q_i$ para todo $1\le i<t$ e $p_t<q_t$.

Entrada

Cada ficheiro de teste contém apenas um caso de teste.

A primeira linha da entrada contém três inteiros $n$, $m$ e $b$ ($1\le n\le2\times10^5$, $2\le m\le2\times10^5$, $1\le b\le m$), que indicam o número de baralhos, o número de jogadores e o índice do chefe.

Nas próximas $n$ linhas, a $i$-ésima linha contém uma cadeia $s_{i,1}s_{i,2}\cdots s_{i,a_i}$ ($s_{i,j}\in\{0,1\}$, $1\le a_i\le10^6$), que representa o $i$-ésimo baralho.

É garantido que:

  • Cada baralho contém pelo menos uma carta alta.

  • O número total de cartas é divisível por $m$.

  • O número total de cartas não excede $10^6$.

Saída

Se existir uma resposta válida, imprima $n$ inteiros $d_1,d_2,\ldots,d_n$ separados por espaços, indicando a resposta lexicograficamente menor, em que $d_i$ é o índice do $i$-ésimo baralho na pilha, de cima para baixo.

Se não existir uma resposta válida, imprima apenas “-1” (sem aspas).

Exemplos

Entrada 1

5 4 3
0100010
00100
001000100
0010
0100010

Saída 1

2 1 3 5 4

Entrada 2

4 2 1
010
10101
010
10101

Saída 2

2 1 4 3

Entrada 3

1 5 3
001000010000100

Saída 3

1

Entrada 4

2 5 3
01000
00010

Saída 4

-1

Entrada 5

1 5 3
11111

Saída 5

-1

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.