2015 informatica internationala day 2 horses subiecte si solutii

3

Click here to load reader

Upload: madalinaelena

Post on 12-Dec-2015

7 views

Category:

Documents


3 download

DESCRIPTION

2015 Informatica Internationala Day 2 Horses Subiecte Si Solutii

TRANSCRIPT

Page 1: 2015 Informatica Internationala Day 2 Horses Subiecte Si Solutii

1/3

InternationalOlympiadinInformatics201526thJuly-2ndAugust2015Almaty,KazakhstanDay2

horsesLanguage:ro-RO

HorsesLuiMansurîiplacesăcreascăcaiurmândtradițiastrămoșilorsăi.ElareacumcemaimarehergheliedinKazakhstan.Nuașastăteaulucrurilecu aniînurmă.CândMansureradoarundzhigit(cuvântulKazakhpentrutânăr)elaveadoarunsingurcal.Elvisasăfacăogrămadădebanișiînceledinurmăsăajungăunbai(cuvântulkazakhpentruomfoartebogat).

Sănumerotămaniidela la înordinecronologică(adicăanul estecelmairecentan).Climadinfiecareaninfluențacreștereahergheliei.Pentrufiecarean Mansurmemoreazăuncoeficientdecreștereîntregșipozitiv .Dacălaînceputulanului aveai caiatuncilasfârșitulacestuiaaveai caiînherghelie.

Caiiputeaufivânduținumailasfârșitulunuian.Pentrufiecarean ,Mansurmemoreazăunîntregpozitiv :prețulunuicallasfârșitulanului .Lasfârșitulfiecăruianeraposibilsăvinzioricâțicai,fiecarelaacelasipreț .

Mansurseîntreabăcareesteceamaimaresumădebanipecarearputeasăoobținădacăalegecelemaibunemomenteîncaresăvândăcaipeparcursulcelor ani.TuaionoareasăfiiinvitaltulluiMansurîntoi(cuvântulkazakhpentruvacanță)șisărăspunzilaîntrebarealui.

MemorialuiMansurseîmbunătățeșteseara,așacavafaceunșirde modificări.Fiecaremodificarevaschimbafieunadintrevalorile ,fieunadintrevalorile .Dupăfiecaremodificareelteîntreabădinnoucareesumaceamaimarepecareopoateobținedinvânzareacailor.ModificărileluiManursuntcumulative:fiecarerăspunstrebuiesăținăcontdetoatemodificărileprecedente.Reținețicăoricaredintrevalorile sau arputeafimodificatădemaimulteori.

RăspunsulluiMansurpoatefiunnumărfoartemare.Pentruaevitalucrulcunumeremariseceredoarrestulmodulo alrăspunsului.

ExempluSăpresupunemcă ani,cuurmătoareleinformații:

0 1 2

X 2 1 3

Y 3 4 1

PentruvalorileinițialeMansurpoateobținecelmaimultdacăvindeambiisăicailasfârșitulanului1.Procesuldecurgedupăcumurmează:

Inițial,Mansurareuncal.

Dupăanul0elare cai.

Page 2: 2015 Informatica Internationala Day 2 Horses Subiecte Si Solutii

2/3

Dupăanul1elare cai.

Elpoateacumsăvândăceidoicai.Profitultotalvafi .

Săpresupunemacumcăexistă modificări:Schimbăvaloarealui în .

Dupămodificareavem:

0 1 2

X 2 1 3

Y 3 2 1

Înacestcaz,unadintresoluțiileoptimeestesăvinziuncaldupăanul0șiapoitreicaidupăanul2.Procesuldecurgedupăcumurmează:

Inițial,Mansurareuncal.

Dupăanul0elare cai.

Elpoatesăvândăunuldintrecaipentru ,șiîimairămâneuncal.

Dupăanul1elare cal.

Dupăanul2elare cai.

Elpoateacumsăvândăceitreicaipentru .Profitultotalvafi .

CerințăSedau , , ,șilistademodificări.Înaintedeprimamodificareșidupăfiecaremodificare,calculeazăsumamaximăpecareopoateobțineMansurpecaiisăi,modulo .Trebuiesăimplementezifuncțiileinit,updateXșiupdateY.

init(N,X,Y)—Grader-ulvaapelaprimaaceastăfuncție,exactodată.

N:Număruldeani.

X:unșirdelungime .Pentru , dăcoeficientuldecreșterepentruanul .

Y:unșirdelungime .Pentru , dăprețulunuicaldupăanul .

RemarcațicăatâtXcâtșiYspecificăvalorileinițialedatedeMansur(înaintedeoricemodificare).

Dupăceapelulinitseîncheie,șirurileXșiYrămânvalabile,șipoțimodificaconținutullordupăcumdorești.

AceastăfuncțietrebuiesăreturnezesumamaximăpecareopoateobțineMansurpecaiisăipentruacestevaloriinițialealelui și ,modulo .

updateX(pos,val)pos:unîntregdinintervalul .

Page 3: 2015 Informatica Internationala Day 2 Horses Subiecte Si Solutii

3/3

val:nouavaloarealui pos .

AceastăfuncțietrebuiesăreturnezesumamaximăpecareopoateobțineMansurdupăaceastămodificare,modulo .

updateY(pos,val)pos:unîntregdinintervalul .

val:nouavaloarealui pos .

AceastăfuncțietrebuiesăreturnezesumamaximăpecareopoateobțineMansurdupăaceastămodificare,modulo .

Seasigurăcăatâtvalorileinițialecâtșicelemodificatepentru șisuntîntre și inclusiv.Dupăinit,grader-ulvaapelaupdateXșiupdateYdecâtevaori.NumărultotaldeapelurialefuncțiilorupdateXșiupdateYvafi .

Subprobleme

Subproblema puncte Precizărisuplimentare

1 17 ,

2 17 none

3 20 și pentruinitșiapelurileupdateX

4 23 none5 23 none

Grader-uldepecalculatorultăuGrader-uldepecalculatorultăuciteștedatedeintraredinfișierulhorses.inînurmătorulformat:

linia1:Nlinia2:X[0]…X[N-1]linia3:Y[0]…Y[N-1]linia4:Mliniile5,…,M+4:treinumeretypeposval(type=1pentruupdateXșitype=2pentruupdateY).

Grader-uldepecalculatorultăuafișeazăvaloareareturnatădeapeluliniturmatădevalorilereturnatedetoateapelurileupdateXșiupdateY.