59 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			59 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
| ---
 | |
| id: 5900f4bd1000cf542c50ffcf
 | |
| title: 'Problema 336: Arranjos maximix'
 | |
| challengeType: 5
 | |
| forumTopicId: 301994
 | |
| dashedName: problem-336-maximix-arrangements
 | |
| ---
 | |
| 
 | |
| # --description--
 | |
| 
 | |
| Um trem é usado para transportar quatro vagões na ordem: $ABCD$. No entanto, por vezes, quando o trem chega para coletar os vagões, eles não estão na ordem certa.
 | |
| 
 | |
| Para reorganizar os vagões, todos eles são empurrados para uma grande prato giratório. Depois de os vagões serem separados em um ponto específico, o trem sai do prato tirando os vagões que ainda estão presos a ele. Os vagões restantes são girados 180°. Todos os vagões são depois reagrupados e este processo é repetido sempre que necessário para obter o menor número de utilizações do prato.
 | |
| 
 | |
| Alguns arranjos, como $ADCB$, podem ser resolvidos facilmente: os vagões são separados entre $A$ e $D$, e depois de $DCB$ ser girado, a ordem correta é alcançada.
 | |
| 
 | |
| No entanto, Simon Simples, o motorista do trem, não é conhecido pela sua eficiência. Então, ele sempre resolve o problema ao receber inicialmente o vagão $A$ no lugar correto, depois o vagão $B$ e assim por diante.
 | |
| 
 | |
| Usando quatro vagões, o pior arranjo possível para Simon, que chamaremos de arranjo máximo, é $DACB$ e $DBAC$; cada um deles exigindo cinco rotações (embora, usando a abordagem mais eficiente, eles possam ser reagrupados usando apenas três rotações). O processo que ele usa para $DACB$ é mostrado abaixo.
 | |
| 
 | |
| <img class="img-responsive center-block" alt="cinco rotações para o arranjo maximix DACB" src="https://cdn.freecodecamp.org/curriculum/project-euler/maximix-arrangements.gif" style="background-color: white; padding: 10px;" />
 | |
| 
 | |
| É possível verificar que há 24 arranjos maximix para seis vagões, dos quais $DFAECB$ é o décimo arranjo maximix lexicográfico.
 | |
| 
 | |
| Encontre o ${2011}^{\text{o}}$ arranjo maximix lexicográfico para onze vagões.
 | |
| 
 | |
| # --hints--
 | |
| 
 | |
| `maximixArrangements()` deve retornar uma string.
 | |
| 
 | |
| ```js
 | |
| assert(typeof maximixArrangements() === 'string');
 | |
| ```
 | |
| 
 | |
| `maximixArrangements()` deve retornar a string `CAGBIHEFJDK`.
 | |
| 
 | |
| ```js
 | |
| assert.strictEqual(maximixArrangements(), 'CAGBIHEFJDK');
 | |
| ```
 | |
| 
 | |
| # --seed--
 | |
| 
 | |
| ## --seed-contents--
 | |
| 
 | |
| ```js
 | |
| function maximixArrangements() {
 | |
| 
 | |
|   return true;
 | |
| }
 | |
| 
 | |
| maximixArrangements();
 | |
| ```
 | |
| 
 | |
| # --solutions--
 | |
| 
 | |
| ```js
 | |
| // solution required
 | |
| ```
 |