【Preguntas】 Preguntas 2 sobre cepillado diario de Java

A. Sumar y multiplicar

Significado del título:

respuesta:

código:

B.Aire acondicionado

Intención del título: Hay t conjuntos de datos en total, y se le dan n personas y la temperatura inicial m, e ingresa n líneas, cada línea tiene tres números, la hora de llegada t, el rango de temperatura l y r que esto persona puede soportar. Es necesario mantener la temperatura en la tienda dentro de su correspondiente temperatura adaptativa cuando el cliente llega a la tienda. Puedes aumentarla 1°, disminuirla 1° o no ajustarla cada minuto. Pregunta si puedes hacer que todos se sientan cómodos. .

Solución: Esta pregunta le pregunta si existe alguna superposición entre el rango de temperatura ajustable del aire acondicionado y el rango de temperatura que el cliente puede soportar. Si hay una persona que no se superpone con el rango ajustable del aire acondicionado, No podrá hacer que todos se sientan bien, de lo contrario hará que todos se sientan bien.

Debido a que el tiempo de llegada de los clientes determinados aumenta, se puede juzgar de forma secuencial. Primero encuentre el tiempo desde el último cliente hasta este cliente, el rango de cambio de temperatura l-=ans, r+=ans, si el rango de temperatura ajustable no se superpone con el rango de temperatura actual de esta persona, no puede hacer que todos estén satisfechos. . Si hay una intersección, encuentre el intervalo mínimo como el rango anterior y continúe el ciclo.

código:

import java.util.ArrayList;
import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner cin = new Scanner(System.in);
		int tt = cin.nextInt();
		while(tt>0) {
			tt--;
			int n = cin.nextInt();
			int m = cin.nextInt();
			ArrayList<Integer> t = new ArrayList<>();
			ArrayList<Integer> l = new ArrayList<>();
			ArrayList<Integer> r = new ArrayList<>();
			t.add(0);
			l.add(0);
			r.add(0);
			for(int i=0; i<n; i++) {
				int a = cin.nextInt();
				int b = cin.nextInt();
				int c = cin.nextInt();
				t.add(a);
				l.add(b);
				r.add(c);
			}
			int flag=1,ll=m,rr=m,ans=0;
			for(int i=1; i<=n; i++) {
				ans = t.get(i) - t.get(i-1);
				ll -= ans;
				rr += ans;
				ll = Math.max(l.get(i), ll);
				rr = Math.min(r.get(i), rr);
				if(ll>rr) {
					flag=0;
					break;
				}
			}
			if(flag==1) {
				System.out.println("YES");
			}else {
				System.out.println("NO");
			}
		}
		cin.close();
	}	
}

C. Plaza del Teatro

El significado de la pregunta: se le dan dos números n y m como la longitud del lado para formar un rectángulo con un área de n × m, y luego se le da una longitud del lado a para formar una losa con un área de a × a. Encuentre el número mínimo de baldosas que se pueden pavimentar. Todo el rectángulo está lleno y el área de las baldosas puede ser mayor que la liberación larga.

Solución: Divida el largo y el ancho del rectángulo por el largo lateral de las baldosas para obtener una respuesta, y luego moldee el largo y el ancho del rectángulo con el largo lateral de las baldosas. Si no es cero, significa que las baldosas y baldosas del frente no pueden cubrir completamente el rectángulo, simplemente agregue otro rectángulo. Tenga en cuenta que el título debe ser largo.

código:

import java.util.Scanner;

public class Main {
	public static void main(String[] args) {
		Scanner cin = new Scanner(System.in);
		long n = cin.nextLong();
		long m = cin.nextLong();
		long a = cin.nextLong();
		long x = n/a;
		long y = m/a;
		if(n%a!=0) x++;
		if(m%a!=0) y++;
		System.out.println(x*y);
	}
}

D.

Significado del título:

respuesta:

código:

MI.

Significado del título:

respuesta:

código:

F.

Significado del título:

respuesta:

código:

GRAMO.

Significado del título:

respuesta:

código:

h.

Significado del título:

respuesta:

código:

Supongo que te gusta

Origin blog.csdn.net/m0_62811051/article/details/130568346
Recomendado
Clasificación