Directorio de artículos
trayectoria más corta
Enlace del tema: https://www.lanqiao.cn/problems/609/learning/
Esta pregunta es para encontrar el camino más corto en el gráfico, la respuesta es 6, se usa el algoritmo de Dijkstra y el resultado final es el siguiente (la programación es demasiado complicada, es fácil de calcular a mano)
modificar la matriz
Enlace del tema: http://lx.lanqiao.cn/problem.page?gpid=T2734
Después de cada lectura de datos, juzgue
hashset
si este valor está incluido en los datos, si está incluido, +1La desventaja es que lleva mucho tiempo, por ejemplo, el título dice 1 ≤ A i ≤ 1000000 1\le A_i\le 10000001≤UNyo≤1 0 0 0 0 0 0 , si todos los números leídos en el año anterior han llenado el número entre 1-10000, y todos los siguientes números dan 1, entonces necesita sumar 10000 veces cada vez para encontrar la respuesta, que tiene grandes ventajas Claro, simple, fácil de entender, fácil de obtener algunos puntos
package daily;
import java.util.HashSet;
import java.util.Scanner;
import java.util.Set;
/**
* http://lx.lanqiao.cn/problem.page?gpid=T2734
*
* @author Jia
*
*/
public class day3_28_2 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int[] ans = new int[N];
Set<Integer> set = new HashSet<>();
for (int i = 0; i < N; i++) {
int num = sc.nextInt();
while (set.contains(num)) {
num++;
}
set.add(num);
ans[i] = num;
}
sc.close();
for (int i = 0; i < ans.length; i++) {
System.out.print(ans[i] + " ");
}
}
}
Arreglo de jardín
Enlace del tema: http://lx.lanqiao.cn/problem.page?gpid=T2873
Parece que necesitamos usar dp para encontrar la subsecuencia más larga que satisfaga la condición, pero no lo haré, ¡envíelo!