infoarena

infoarena - concursuri, probleme, evaluator, articole => Arhiva de probleme => Subiect creat de: Mircea Pasoi din Februarie 19, 2006, 23:43:04



Titlul: 176 NextSeq
Scris de: Mircea Pasoi din Februarie 19, 2006, 23:43:04
Aici puteţi discuta despre problema NextSeq (http://infoarena.ro/problema/nextseq).


Titlul: 176 NextSeq
Scris de: Machu Picchu din Februarie 22, 2006, 20:31:39
Am facut problema plecand de la primul sir si ajungand la al doilea, prin incrementare. Problema e ca nu reusesc sa depasesc 55 de puncte (la celalalte teste imi spune raspuns incorect sau fisier inexistent). Stie cineva unde as fi putut gresi?


Titlul: 176 NextSeq
Scris de: Silviu-Ionut Ganceanu din Februarie 22, 2006, 23:50:14
Pai nu putem sti judecand doar dupa punctaj. Sigur ai gresit ceva in implementare. Tot ce pot sa-ti spun e sa-ti construiesti singur niste teste (este relativ usor) si sa nimeresti unul care nu merge.

Succes.

PS: Nu post cod ca nu vom sta sa analizam. Debugheaza in continuare :)


Titlul: 176 NextSeq
Scris de: Savin Tiberiu din Februarie 23, 2006, 14:39:24
shi eu fac acelasi lucru si tot 55 de puncte primesc, doar ca mie nu imi da incorect ci TLE


Titlul: 176 NextSeq
Scris de: andreit1 din Februarie 24, 2006, 21:45:06
Vezi poate intra undeva in ciclu infinit sau poate poti sa mai imbunatatesti ceva. Daca nu reusesti sa o faci sa intre in timp incearca solutia cu scaderea numerelor in baza n( precizata in solutia oficiala). Asta sigur o sa intre in timp.


Titlul: Raspuns: 176 NextSeq
Scris de: Bondane Cosmin din Iulie 05, 2006, 09:23:28
ii ceva caz special la testu 17 ? nu inteleg dc nu merge  :-k, in rest restul testelor imi merg


Titlul: Raspuns: 176 NextSeq
Scris de: Savin Tiberiu din Iulie 05, 2006, 10:21:12
nu tin minte sa fie vreo ceva ciudat la vreo unul din teste, eu luam 55 la inceput ptr ca citeam cu streamuri, dupa ce am schimbat am luat 100 din prima. vezi restrictiile poate e de acolo.


Titlul: Raspuns: 176 NextSeq
Scris de: Bondane Cosmin din Iulie 05, 2006, 10:54:09
mda, so rezolvat, declaram siruri de 10000 inloc de 10001  :fighting:


Titlul: Răspuns: 176 NextSeq
Scris de: Andrei Homorodean din Mai 02, 2007, 14:34:25
Am incercat toate chestiile(iau 95) si nu iau primul test nici sa ... Nu-mi da cineva idee de un test banal de simplu? :D


Titlul: Răspuns: 176 NextSeq
Scris de: Codrea Marcel din Mai 02, 2007, 15:04:13
Poate ca nu ai luat in calcul cazul in care A si B sunt consecutive in ordine lexicografica si trebuie sa afisezi 0 !


Titlul: Răspuns: 176 NextSeq
Scris de: Andrei Homorodean din Mai 02, 2007, 15:26:11
Multumesc, dar nu e asta, eu ma gandeam la un x mai ciudat.. ma rog..


Titlul: Răspuns: 176 NextSeq
Scris de: Silviu-Ionut Ganceanu din Mai 02, 2007, 23:33:47
Multumesc, dar nu e asta, eu ma gandeam la un x mai ciudat.. ma rog..

X-ul contine si cifra 0 pentru testu 1 :)


Titlul: Răspuns: 176 NextSeq
Scris de: Florian Marcu din Mai 03, 2007, 21:57:25
Eu nu pricep o chestie fundamentala:

Cod:
Este usor de observat ca cele doua siruri pot fi interpretate ca numere in baza N (numarul de elemente din setul X). 
Acest lucru se poate efectua sortand numerele din setul X si asociind
fiecaruia o valoare intre 0 si N-1 (procedeul poarta numele de normalizare).
....
Astfel, dupa ce am calculat reprezentarile sirurilor A si B in baza N, putem efectua o scadere pe numere mari 

Deci...eu am intelesc cam asa [ma voi referi la datele de intrare din exemplul problemei] :

*ordonez x => 1389
*asociez fiecaruia un nr din baza 4 (baza n) :0123 asadar am: 1-0 , 3-1, 8-2, 9-3 ;
*apoi....in loc sa folosesc nr din sirurile a si b, folosesc reprezentarea lor in baza n, deci sirul a[ 9, 3 ]    devine  A[ 3 1 ] iar sirul B[1 3 8] devine B[0 1 2 ].. si apoi trebuie sa scad B-A care evident nu da 8..kat ar trebui sa dea...
         Asa am intelesc eu..ku singuranta gresit... :fighting: Insa, unde e greseala?  ](*,)


Titlul: Răspuns: 176 NextSeq
Scris de: Andrei Homorodean din Mai 03, 2007, 22:09:42
Am o vaga banuiala ca trebuie sa transformi in baza 10 rezultatul :D

Vezi sa nu ajungi atunci cand faci operatii pe numere mari sa apara cifre mai mari ca si n-1, bafta!

Later edit: vezi ca mai tre scazut un 1 pe undeva si tine numerele invers.


Titlul: Răspuns: 176 NextSeq
Scris de: Florian Marcu din Iunie 30, 2007, 09:13:40
Iau 95 de puncte, cu WA pe testul 1. Ce ar putea sa fie? Nu vad nimic special daca x-ul contine si cifra 0...mie imi da pe testele mele...Si nu e nici din cauza ca A si B ar fi consecutive in ordine lexicografica...Care ar putea fi problema...?


[Edit] S-a rezolvat! Am luat 100. Greseala era k eu ma opream cand gaseam in a[] elemnte identice cu b[], numai k nu verificam si lungimea celor 2.  :yahoo:


Titlul: Răspuns: 176 NextSeq
Scris de: Taloi Bogdan Cristian din Noiembrie 24, 2007, 20:27:06
Nici eu nu inteleg lucrul acela esential :'(


Titlul: Răspuns: 176 NextSeq
Scris de: Florian Marcu din Noiembrie 24, 2007, 20:35:13
Pai ..din ce imi amintesc, eu nu`mi dadeam seama ca trebuie alese doar numerele care apartin bazei n. Deci scaderea aia, trebuie sa o simulezi k fiind in baza n, si nu in baza 10 (daca scazi pur si simplu A-B, e ca si cum ai scadea in baza 10). Sper ca ai inteles ce am spus. Mult succes!  :thumbup:


Titlul: Răspuns: 176 NextSeq
Scris de: Taloi Bogdan Cristian din Noiembrie 24, 2007, 20:36:55
Dar ce-i cu scaderea unui 1?
Si cat ajung A si B dupa "normalizare" ?Nu 3,1 si 0,1,2 ?


Titlul: Răspuns: 176 NextSeq
Scris de: Florian Marcu din Noiembrie 24, 2007, 21:15:01
sirul A devine  A[ 3 1 ] iar sirul B[1 3 8] devine B[0 1 2 ]


Titlul: Răspuns: 176 NextSeq
Scris de: Simoiu Robert din Aprilie 04, 2010, 09:58:28
Imi puteti da o indicatie cum sa fac transformarea in baza 10? Eu fac normalizarea si fac asa: B-(A+1), dar ... nu stiu cum sa transform optim in baza 10.