Roller Coaster Railroad - International Olympiad in Informatics
Transcripción
Roller Coaster Railroad - International Olympiad in Informatics
InternationalOlympiadinInformatics2016 12-19thAugust2016 Kazan,Russia day1_2 railroad Country:BOL RollerCoasterRailroad Annaestátrabajandoenunparquedediversionesyestáacargodeconstruirlos diseñosdeloscarrilesparaunanuevamontañarusa.Ellayahadiseñado n secciones especiales.(convenientementeenumeradasde 0 a n − 1 )queafectánalavelocidad deuntrendelamontañarusacomo:colinas,pistasdefreno,yotros.Ahoraellatiene queponerlosjuntosyproponerundiseñofinalparalamontañarusa. Paracada i comprendidoentre 0 y n − 1 ,inclusive,lasecciónespecial i tienedos propiedades: cuandoseingresaalasección,existeunlímitedevelocidad:lavelocidaddeltren debeseralmenos(menoroiguala) si km/h(kilometrosporhora), cuandoseabandonalasección,lavelocidaddeltrenesexactmente ti km/h, independientementealavelocidadconlacualingresoeltrenalasección. Lamontañarusaconcluidadebecontenercadaunodelas n seccionesexactamente unavez.Sinembargo,debehaberunrielentrecadadosseccionesconsecutivas.Anna debeescogerelordendelas n seccionesydecidirlaslongitudesdecadariel.La longituddeunrielsemideenmetrosydebeserigualacualquiernúmeroenterono negativo(Posiblementezero) Cadametrodelaviaentredosseccionesespecialesreducelavelocidaddeltrenpor1 km/h.Alprincipiodelrecorrido,eltreningresaalaprimeraseccionespecialauna velocidadde1km/h. Eldiseñofinaldebesatisfacerlossiguientesrequerimientos: eltrennodebeviolarningunlímitedevelocidadmientrasestáingresandoala secciónespecial; lavelocidaddeltrenespositivaencualquiermomentohastaquealcanzalaparte finaldelaúltimasecciónespecial. Entodaslassubtareasexceptolasubtarea3,sulaboresencontrarelmínimolargo totalposibledelasvíasentrelassecciones.Enlasubtarea3solonecesitarevisarsi existeundiseñodemontañarusaválido,demodoquecadavíatengalargocero. Detallesdeimplementación Debesimplementarlassiguientesfunciones(method): int64pla n_ro lle r_co a ste r(int[]s,int[]t). s:vectordelongitud n ,entradadevelocidadesmáximapermitida. t:vectordelongitud n ,velocidadesdesalida. 1/3 Lafuncióndeberetornarlalongitudposibletotalminimadetodoslos caminosentrelasseccionesespeciales(enlasubtarea3,puedessacarde salidadunnumeroenteropositivosilarespuestanoescero,observael detalleenlaseccióndelasubtrea). ParaellenguajeC,elesquemadelafunciónesuntantodiferente: int64pla n_ro lle r_co a ste r(intn,int[]s,int[]t). n:elnúmerodeelementosensyt(esdecir,elnúmerodesecciones especiales), losotrosparametrossonlosmismoquedelosdearriba. Ejemplo int64pla n_ro lle r_co a ste r([1,4,5,6],[7,3,8,6]) Enesteejemploexistecuatroseccionesespeciales.Lamejorsoluciónesconstruirlas enelsiguienteorden 0, 3, 1, 2 ,yconectarlasporcaminosdelongitudes 1, 2, 0 respectivamente.Deestaformaeltrenrecorreportodoelcaminodeferrocarril: Inicialementelavelocidaddeltrenes 1 km/h. Eltrenempiezaelrecorridoentrandoalasección 0 . Eltrendejalasección 0 .aunavelocidadde 7 km/h. Posteriormentehayunapistadelongitudde 1 m.Cuandoeltrenalcanzaelfinal delcamino,suveloidades 6 km/h. Eltreningresaalasecciónespecial 3 a 6 km/hylaabandonaalamisma velocidad. Despuesdeabandonarlasección 3 ,eltrenviajaatravésdeunasecciónde 2 m. Suvelocidadsereducea 4 km/h. Eltreningresaalasecciónespecial 1 a 4 km/hylaabandonaa 3 km/h. Inmediatmentedespuésdelasección 1 eltreningresaalaseccionespecial 2 . Eltrenabandonalasección 2 .Suvelocidadfinales 8 km/h. Lafuncióndeberetornarlalongitudtotaldelcaminoentrelassecciones especiales 1 + 2 + 0 = 3 . Subtareas Entodaslassubtareas 1 ≤ si 1. (11puntos): 2 ≤ n ≤ 109 y 1 ≤ ti ≤ 109 . ≤ 8, 2. (23puntos): 2 ≤ n ≤ 16 , 3. (30puntos): 2 ≤ n ≤ 200 000 .Enestassubtareatuprogramasolonecesita verificarsilarespuestaesceroono.Silarespuestanoescero,cualquiernúmero enteropositivoesconsideradocorrecto. 4. (36puntos): 2 ≤ n ≤ 200 000 . Samplegrader 2/3 Thesamplegraderreadstheinputinthefollowingformat: linea1:entero n . linea2+i,porcada i comprendidaentre 0 and n − 1 :enteros si y ti . 3/3