Sei sulla pagina 1di 9

21/4/2018 Preguntas sobre el tema

Información

Desafío de codificación

La (s) siguiente (s) pregunta (s) en este paso son tareas de codificación de
algoritmo. Tenga en cuenta que el botón "Comprobar" está desactivado en nuestro
sistema y NO le proporcionará comentarios sobre los errores de sintaxis o los
resultados de cálculo. Debe asegurarse de que el código compila y funciona según
lo requerido en la pregunta y puede hacerlo utilizando su propio IDE o editor de
texto.

https://techscreen.crossover.com/mod/quiz/attempt.php?attempt=344764&page=10 1/9
21/4/2018 Preguntas sobre el tema
Pregunta 51 Considere una matriz de n enteros decimales con nombre de elementos.
Sin completar Queremos reorganizar los elementos de acuerdo con las siguientes reglas:

Marcado de 5.00 Ordene los enteros en orden ascendente por el número de 1 's en sus
representaciones binarias. Por ejemplo, → y → , entonces (que tiene solo en
binario) se pediría antes (que tiene triples en
binario). 710 1112 810 10002 8 1 7 1
Dos o más enteros que tienen el mismo número de 1 en sus representaciones
binarias se ordenan aumentando el valor decimal. Por ejemplo, → y →
ambos contienen dobles en su representación binaria, por lo que se
ordenarían antes porque tienen el valor decimal más
pequeño. 510 1012 610 1102 1 5 6

Complete la función de reorganización en el editor a continuación. Tiene un


parámetro: una matriz de n números enteros, elements . La función debe
ordenar la elements matriz de acuerdo con las reglas anteriores y devolver la
matriz ordenada.

Formato de entrada:

Los casos de prueba internos leen la siguiente entrada de stdin y la pasan a la


función:

La primera línea contiene un entero n , que denota el número de enteros en


elements .
Cada línea i de las n líneas siguientes (donde 0 ≤ i < n ) contiene un número
entero que describe . elementsi

Restricciones:
1 ≤ n ≤ 10 5
1 ≤ ≤ 10 9 elementsi

Formato de salida:
Devuelve una matriz de n enteros que denotan el ordenado elements .

Entrada de muestra (0):

3
1
2
3

Muestra de salida (0):

https://techscreen.crossover.com/mod/quiz/attempt.php?attempt=344764&page=10 2/9
21/4/2018 Preguntas sobre el tema
1
2
3

Explicación (0):

Dado elements = [1, 2, 3] :

1. 110 → 12
2. 210 → 102
3. 310 → 112

Los enteros decimales 1 y los 2 dos tienen un solo 1 en su representación


binaria, por lo que los ordenamos aumentando el valor decimal (es decir, 1 < 2 ).
El entero decimal 3 tiene un doble 1 en su representación binaria, por lo que lo
ordenamos después de 1 y 2 . Luego regresamos
elements = [1, 2, 3] como nuestra matriz ordenada.

Entrada de muestra (1):

5
5
3
7
10
14

Muestra de salida (1):

3
5
10
7
14

Explicación (1):

Dado elements = [5, 3, 7, 10, 14] :

1. 510 → 1012
2. 310 → 112
3. 710 → 1112
4. 1010 → 10102
5. 1410 → 11102

https://techscreen.crossover.com/mod/quiz/attempt.php?attempt=344764&page=10 3/9
21/4/2018 Los enteros decimales 5 , 3 y Preguntas
10 tienen dobles
sobre el tema 1 's en sus representaciones

binarias, por lo que ellos ordenan mediante el aumento de valor decimal (es decir,
3 < 5 < 10 ). Los números enteros decimales 7 y 14 tienen callos 1 's en sus
representaciones binarias, por lo que los colocan después 3 , 5 y 10 en orden
creciente decimal (es decir, 7 < 14 ). Luego regresamos
elements = [3, 5, 10, 7, 14] como nuestra matriz ordenada.
Por ejemplo:

Entrada Resultado

3 1
1 2
2 3
3

5 3
5 5
3 10
7 7
10 14
14

Respuesta: (régimen de penalización: 0%)


1 importar java . io . * ;
2 importar java . util . * ;
3 importar java . texto . * ;
4 importar java . matemáticas . * ;
5 importar java . util . expresiones regulares . * ;
6
7 ▼ probador de clase pública {
8
9▼ / **
10 * Complete la función a continuación.
11 * ¡NO MODIFIQUE nada fuera de esta función!
12 * /
13 ▼ static int [] rearrange ( int [] elementos ) {
14
15 }
diec
17 ▼ / **
18 * ¡NO MODIFIQUE ESTE MÉTODO!
19 * /
20 ▼ public static void main ( String [] args ) lanza
21 Escáner en = nuevo escáner ( System . En );
22
23 int n = 0 ;
24 n = Entero . parseInt ( en . nextLine (). trim
25 int [] elementos = new int [ n ];
26 elemento int ;
27 ▼ para ( int i = 0 ; i < n ; i ++ ) {
28 elemento = Entero . parseInt ( en . nextLin
29 elementos [ i ] = elemento ;
30 }
31
32 // llamar a la función de reorganización
33 int [] results = reorganizar ( elementos );
34
https://techscreen.crossover.com/mod/quiz/attempt.php?attempt=344764&page=10 4/9
21/4/2018 35 ▼ para ( int i =sobre0el tema
Preguntas ; i < resultados . longitud
36 Sistema . a cabo . println ( String . valueOf
37 }
38 }
39 }

COMPROBAR

https://techscreen.crossover.com/mod/quiz/attempt.php?attempt=344764&page=10 5/9
21/4/2018 Preguntas sobre el tema
Pregunta 52 Considere una cadena que expression consta de los personajes < y > solo.
Sin completar Consideramos que la cadena se equilibrará si cada una < siempre aparece antes (es
decir, a la izquierda de) un > carácter correspondiente (no es necesario que sean
Marcado de 5.00
adyacentes). Además, cada < y > actuar como un par único de símbolos y
ninguno de los símbolos puede ser considerado como parte de cualquier otro par
de símbolos. Por ejemplo, las cuerdas <<>> , <> y <><> son todos equilibrada ,
pero las cuerdas >> , <<> y ><>< son desequilibrada .
Para equilibrar una cadena, podemos reemplazar solo el > carácter con la
<> mayoría de las maxReplacement veces. Dado un expression valor y de
maxReplacement , ¿puedes convertir una cuerda desequilibrada en una
equilibrada?

Complete la balancedOrNot función en el editor a continuación. Tiene los


siguientes parámetros:

1. Una matriz de n cadenas, que expressions denota la lista de expresiones


para verificar.
2. Una matriz de n enteros, maxReplacements donde denota la cantidad
máxima de reemplazos permitidos cuando se intenta equilibrar
. maxReplacementsi expressionsi

La función debe devolver una matriz de enteros donde cada índice i (0 ≤ i < n )
contiene un 1 si está equilibrado o a si no lo está. expressionsi 0

Formato de entrada:

Un conjunto de pruebas internas de la unidad estará en el código con la entrada en


el siguiente formato.

La primera línea contiene un entero n , que denota el tamaño de expressions .

Cada línea i de las n líneas siguientes (donde 0 ≤ i < n ) contiene una cadena
que describe . expressionsi
La siguiente línea contiene un entero m , que denota el tamaño de
maxReplacements .

Cada línea i de las n líneas siguientes (donde 0 ≤ i < n ) contiene una cadena
que describe . maxReplacementsi

Restricciones
1 ≤ n ≤ 10 2
1 ≤ ≤ 10 5 length(expressionsi)
0 ≤ ≤ 10 5 maxReplacementsi

Formato de salida:
La función debe devolver una matriz de enteros donde cada índice i (0 ≤ i < n )
contiene un 1 si está equilibrado o a si no lo está. expressionsi 0
https://techscreen.crossover.com/mod/quiz/attempt.php?attempt=344764&page=10 6/9
21/4/2018 Preguntas sobre el tema
Observaciones:
¡Compruebe que su código se ejecuta antes de enviarlo!

Entrada de muestra (0):

2
<>>>
<>>>>
2
2
2

Muestra de salida (0):

1
0

Explicación (0):

Procesamos expressions = ["<>>>", "<>>>>"] y nos


maxReplacements = [2, 2] gusta:

1. Para string <>>> con , se equilibra después de dos reemplazos: → → . Como


la cadena se convirtió en reemplazos ≤ , almacenamos un índice en nuestra
matriz de
devolución. maxReplacements0 = 2 <>>> <><>> <><><> maxReplacements0
1 0
2. Para cadena <>>>> con , se equilibra después de tres reemplazos: → → → .
Como la cadena se convirtió en reemplazos, almacenamos un índice en
nuestra matriz de
devolución. maxReplacements1 = 2 <>>>> <><>>> <><><>> <><><><>
maxReplacements1 0 1

Luego devolvemos el arreglo [1, 0] como nuestra respuesta.

Entrada de muestra (1):

2
<>
<>> <
2
1
0

Muestra de salida (1):


https://techscreen.crossover.com/mod/quiz/attempt.php?attempt=344764&page=10 7/9
21/4/2018 Preguntas sobre el tema
1
0

Explicación (1):

Procesamos expressions = ["<>", "<>><"] y nos


maxReplacements = [1, 0] gusta:

1. Para cuerdas <> con , ya está equilibrado y no necesita reemplazos. Como la


cadena está equilibrada en reemplazos ≤ , almacenamos un índice en nuestra
matriz de devolución. maxReplacements0 = 1 maxReplacements0 1 0
2. Para una cuerda <>>< con , la cuerda no está equilibrada. Es imposible
equilibrar la cadena porque termina (y también estamos limitados a realizar
reemplazos), así que almacenamos un índice en nuestra matriz de
devolución. maxReplacements1 = 0 < 0 0 1

Luego devolvemos el arreglo [1, 0] como nuestra respuesta.

Por ejemplo:

Entrada Resultado

2 1
<>>> 0
<>>>>
2
2
2

Respuesta: (régimen de penalización: 0%)


1 importar java . io . * ;
2 importar java . util . * ;
3 importar java . texto . * ;
4 importar java . matemáticas . * ;
5 importar java . util . expresiones regulares . * ;
6
7 ▼ probador de clase pública {
8
9▼ / **
10 * Complete la función a continuación.
11 * NO MODIFIQUE nada fuera de este método.
12 * /
13 ▼ static int [] balancedOrNot ( String [] expressions
14
15 }
diec
17 ▼ / **
18 * ¡NO MODIFIQUE ESTE MÉTODO!
19 * /
20 ▼ public static void main ( String [] args ) lanza
21 Escáner en = nuevo escáner ( System . En );
22 int [] res ;
23
24 int _expressions_size = 0 ;
25 _expressions_size = Entero . parseInt ( en . ne
26 String [] _expressions = new String [ _express
https://techscreen.crossover.com/mod/quiz/attempt.php?attempt=344764&page=10 8/9
21/4/2018 27 String _expressions_item
Preguntas sobre el tema ;
28 ▼ for ( int _expressions_i = 0 ; _expressions_i
29 ▼ prueba {
30 _expressions_item = en . nextLine ();
31 ▼ } catch ( Exception e ) {
32 _expressions_item = null ;
33 }
34 _expressions [ _expressions_i ] = _expressio
35 }
36
37 int _maxReplacements_size = 0 ;
38 _maxReplacements_size = Entero . parseInt ( en
39 int [] maxReplacements = new int [ maxReplac

COMPROBAR

https://techscreen.crossover.com/mod/quiz/attempt.php?attempt=344764&page=10 9/9

Potrebbero piacerti anche