Un gruppo di amici vuole trascorrere insieme un periodo di vacanza. Per capire in quale periodo sarebbero tutti disponibili a partire, si decide di chiedere a ciascuno in quali giorni sia occupato per lavoro o altri impegni e di cercare poi l'intervallo di tempo più lungo nel quale gli amici sono tutti liberi.

Se per semplicità si rappresentano i giorni con numeri interi ogni intervallo "impegnato" corrisponde a due numeri. Ovviamente, gli intervalli possono sovrapporsi, in tutto o in parte, ma sono tutti compresi fra 1 e 1000, giacché tre anni sono un tempo più che ragionevole per organizzare una vacanza.

Ad esempio, i dati seguenti riportano cinque intervalli impegnati

290 870 10 100
910 978 90 243
313 547
e precisamente gli intervalli chiusi [290;870], [10;100], [910;978], ecc... L'intervallo massimo di tempo libero è lungo 46 giorni, essendo compreso fra 244 e 289 inclusi (mentre 243 e 290 cadono in intervalli impegnati).

Nell'esempio seguente, invece:

290 870 10 100
910 948 90 243
313 547
l'intervallo massimo di tempo libero è lungo 52 giorni, essendo compreso fra 949 e 1000 inclusi (mentre 948 cade in un intervallo impegnato e 1001 cade fuori dell'orizzonte temporale ammesso).

Si salvino i seguenti intervalli in un file di testo, vi si acceda e si calcoli la lunghezza massima degli intervalli di tempo libero.

La risposta al quesito è il numero intero corrispondente alla lunghezza del più lungo intervallo di tempo libero.


 414  420   753  765   926  936   651  657  
 720  735   382  396   881  893   649  657  
 262  278   750  768    73   82   894  903  
 514  524   246  258   842  859    35   54  
 676  692    61   71   476  495   931  949  
 318  333     8   18   265  284   276  290  
 166  182   435  454   733  741    91  103  
 492  497   463  475   411  420   906  922  
 528  541   587  602   910  917   885  902  
 499  512    33   42   722  734   887  903  
 212  217   838  851   799  804     3   18  
  16   24   589  603   416  428   414  429  
 532  537   316  322   327  344    74   91  
 554  561   588  602   995 1000   864  883  
 487  504   413  423   937  953   153  160  
 800  815   180  199   648  656   159  167  
 274  285   627  645   130  138   883  889  
 148  155   142  149   454  464   127  137  
 462  473   215  234    29   42   563  575  
 199  217   496  510   150  168   753  767  
 947  955   409  415   630  648   364  378  
 288  297   412  431   699  709   805  817  
 460  475   498  515   713  728    91   99  
 983  989   848  867   438  453   523  538  
 862  877   739  750   913  924   215  232  
 318  337   199  211   886  899   407  425  
 211  228   882  896   103  117   770  787  
 878  883   857  864   665  676   315  326  
  95  110   985  994    19   27   614  629  
 542  561   213  232   466  482   416  423  
 706  716   865  882   680  697   243  249  
  65   79   943  959   421  430   574  586  
 364  376   219  229   191  200   233  249  
   1   11   693  698   596  613   136  143  
 750  769   689  698    82   89   780  785  
 934  941   483  489   161  177   213  226  
 268  283   700  708   429  437   392  400  
 631  640   143  155   693  703   632  638  
 135  143   474  483   368  380   669  686  
 759  772   102  116   725  734   667  681  
 521  533    15   30   673  690   400  410  
 966  975   320  335   544  556   273  284  
 780  797   979  996   580  599   748  762  
 117  124   941  954    22   36   667  685  
 444  459   814  822   704  717   693  706  
 163  175   160  174   780  791   445  450  
 899  914   743  753   459  469   519  533  
  10   25    71   86   104  109   160  175  
 215  228   388  396   278  284   296  309  
 384  401   516  521   810  823    58  75