Número de pregunta: | 201809-2 |
Nombre de la pregunta: | Compras de comestibles |
límite de tiempo: | 1.0 s |
Limite de memoria: | 256,0 MB |
Descripción del problema: | Descripción del problema Little H y Little W llegaron a una calle y compraron alimentos por separado. El proceso de comprar alimentos se puede describir como ir a la tienda a comprar algunos alimentos y luego ir a una plaza al lado para cargar los alimentos en el carrito. Ambos compran n tipos de verduras. Comida, por lo que debe cargarse n veces. Específicamente, para H pequeño, hay n períodos de tiempo disjuntos [a1, b1], [a2, b2] ... [an, bn] se están cargando, y para W pequeño, hay n períodos de tiempo disjuntos Se está cargando el período de tiempo [c1, d1], [c2, d2] ... [cn, dn]. Entre ellos, un período de tiempo [s, t] representa el tiempo desde el tiempo s hasta el tiempo t, y la duración es ts. Formato de entrada La primera línea de entrada contiene un número entero positivo n, que representa el número de períodos de tiempo. Formato de salida Muestra una línea, un número entero positivo, que indica cuánto tiempo pueden hablar los dos. Entrada de muestra 4 Salida de muestra 3 Tamaño de datos y convención Para todos los casos de uso de evaluación, 1 ≤ n ≤ 2000, ai <bi <ai + 1, ci <di <ci + 1, para todo i (1 ≤ i ≤ n), 1 ≤ ai, bi, ci, di ≤ 1000000. |
import java.util.Scanner;
public class 买菜 {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int[] a=new int[1000001];
int[] b=new int[1000001];
for(int i=1;i<=n;i++){
int s=sc.nextInt();
int t=sc.nextInt();
for(int j=s;j<t;j++){
a[j]=1;
}
}
for(int i=1;i<=n;i++){
int s=sc.nextInt();
int t=sc.nextInt();
for(int j=s;j<t;j++){
b[j]=1;
}
}
int res=0;
for(int i=1;i<=1000000;i++){
if(a[i]==b[i]&&a[i]!=0&&b[i]!=0){
res++;
}
}
System.out.println(res);
}
}