Pagini: 1 [2] 3   În jos
  Imprimă  
Ajutor Subiect: 838 Alibaba  (Citit de 16052 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
hysep
Strain


Karma: 2
Deconectat Deconectat

Mesaje: 12



Vezi Profilul
« Răspunde #25 : Aprilie 06, 2009, 14:44:10 »

Citat
Ordinea cifrelor din noul numar trebuie sa fie aceeasi ca in numarul initial. De exemplu, daca ai numarul initial 4512, si elimini k=2 cifre, atunci rezultatul este 45. Tu probabil afisezi 54 [ ceea ce nu e corect, pt ca 4 trebuie sa apara inaintea lui 5 ].
Mie imi da bine imi da 45 pentru testul tau:D
Mai datimi teste va rog

daca vrei iti dau sursa mea la alibaba(100 puncte) daca-mi dai sursa ta la palindrom2 peacefingers
Memorat
Florian
Nu mai tace
*****

Karma: 125
Deconectat Deconectat

Mesaje: 832



Vezi Profilul
« Răspunde #26 : Aprilie 06, 2009, 14:46:52 »

Citat
Ordinea cifrelor din noul numar trebuie sa fie aceeasi ca in numarul initial. De exemplu, daca ai numarul initial 4512, si elimini k=2 cifre, atunci rezultatul este 45. Tu probabil afisezi 54 [ ceea ce nu e corect, pt ca 4 trebuie sa apara inaintea lui 5 ].

Scuza-ma. Nu am fost atent. Rezultatul nu este 45, ci 52. Deci aici gresesti!  Smile

Memorat
andrici_cezar
De-al casei
***

Karma: -47
Deconectat Deconectat

Mesaje: 121



Vezi Profilul
« Răspunde #27 : Aprilie 06, 2009, 19:15:33 »

ms Very Happy am inteles unde am gresit acum trebuie doar sa rezolv greseala Very Happy
Memorat
zloteanu.adrian
Strain
*

Karma: -9
Deconectat Deconectat

Mesaje: 38



Vezi Profilul
« Răspunde #28 : Aprilie 08, 2009, 14:56:56 »

imi da eroare de compilare Brick wall Brick wall
dar acasa imi functioneaza perfect Think
Memorat
Florian
Nu mai tace
*****

Karma: 125
Deconectat Deconectat

Mesaje: 832



Vezi Profilul
« Răspunde #29 : Aprilie 08, 2009, 15:06:38 »

Pai tu nu faci cu fisiere? Vad ca folosesti functia "cin" din iostream. Nu ai voie.
Memorat
zloteanu.adrian
Strain
*

Karma: -9
Deconectat Deconectat

Mesaje: 38



Vezi Profilul
« Răspunde #30 : Aprilie 08, 2009, 15:09:30 »

da,mi-am dat seama
dar tot imi pica un test,desi nu stiu sigur care
(nota:cum de mi-ai vazut sursa?)
Memorat
Florian
Nu mai tace
*****

Karma: 125
Deconectat Deconectat

Mesaje: 832



Vezi Profilul
« Răspunde #31 : Aprilie 08, 2009, 15:12:41 »

Pai nu ti-am vazut sursa. Ti-am vazut doar mesajul emis de evaluator, in borderoul de evaluare. Tie iti pica ultimul test, deoarece iti iese din timp. Citeste documentatia ca sa intelegi mai bine cum sa umbli pe site.  Smile
Memorat
Mishu91
Nu mai tace
*****

Karma: 169
Deconectat Deconectat

Mesaje: 751



Vezi Profilul
« Răspunde #32 : Iulie 29, 2009, 07:57:07 »

Citat
pe ea o calculez astfel nou=nou*10+max
Avand in vedere ca N, K <= 10000, e cam greu sa-ti retii in nou un numar de 10000 de cifre.
Apoi, din ce am citit, solutia ta este de complexitate O(N2), si nici prea corecta nu este. Tu cauti maximul, iar dupa ce l-ai gasit cauti maximul elementelor de dupa el (asa am inteles eu, cel putin) si tot asa. Dar daca maximul este pe ultima pozitie ce te faci?
Poti citi articolul cu solutii pentru a te ajuta sa gasesti un algoritm rapid si corect.
Memorat
davidurs1
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 2



Vezi Profilul
« Răspunde #33 : Septembrie 02, 2009, 14:03:40 »

ma ajuta careva....? la toate testele care le incerc imi merge...dar cand dau la evaluator.. 0 pct!..
Code:
Cod:
#include<fstream.h>
main()
{
long n,k,a[1000]={0},i,j,c=0,m=0,min,max=0,l=0,p=0;
ifstream f("alibaba.in");
ofstream g("alibaba.out");

f>>n;
f>>k;
f>>j;
        i=n;
while(j)
  {
   a[i]=j%10;
   i--;
   j=j/10;
  }
for(j=10; j>0; j--)
{
max=0;
if(l==0)
for(i=1; i<=n; i++)
if(a[i]!=j)max++;
if(max==n)l=j;
}
while(c!=k)
for(i=1; i<n; i++)
{
if(a[n] < a[n-1] && p==0 && c!=k){
               a[n]=l;
               c++;
               p++;
              }
if(a[i] < a[i+1] && c!=k){
                 a[i]=l;
                 c++;
                }
}
for(i=1; i<=n; i++)
if(a[i]!=l) m=m*10+a[i];
g<<m;
return 0;
}

...

[editat de moderator] Foloseste tagul code cand postezi cod pe forum.
« Ultima modificare: Septembrie 02, 2009, 20:52:56 de către Sima Cotizo » Memorat
Mishu91
Nu mai tace
*****

Karma: 169
Deconectat Deconectat

Mesaje: 751



Vezi Profilul
« Răspunde #34 : Septembrie 02, 2009, 14:28:51 »

Foloseste tagul "code" cand postezi o sursa, si in plus fisierul de intrare este alibaba.in respectiv alibaba.out
Memorat
davidurs1
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 2



Vezi Profilul
« Răspunde #35 : Septembrie 02, 2009, 14:50:06 »

... o sa modific "tagurile"...Smile deocamdata nu stiu...nu am mai folosit infoarena...
am schimbat si in alibaba.out/in... dar nu e aceea problema...vede careva alta problema..?
Memorat
unknownliviu
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 5



Vezi Profilul
« Răspunde #36 : Ianuarie 14, 2010, 17:46:46 »

Imi zice si mie cineva ce gresesc daca sortez crescator vectorul care contine  numarul(l-am considerat vector char)si apoi afisez cifrele de la cea mai mare pana la a n-k cifra Read This!
Memorat
vladtarniceru
De-al casei
***

Karma: 81
Deconectat Deconectat

Mesaje: 145



Vezi Profilul
« Răspunde #37 : Aprilie 07, 2010, 18:54:55 »

daca am:
5 3
12345

eu raman cu 45 nu?
adica nu pot sa iau 54(sa fie in ordine  Eh? )
Memorat
gabitzish1
Moderatori infoarena
Nu mai tace
*****

Karma: 321
Deconectat Deconectat

Mesaje: 926



Vezi Profilul
« Răspunde #38 : Aprilie 07, 2010, 20:13:59 »

Ramai cu 45.
Memorat
DEYDEY2
Strain
*

Karma: 1
Deconectat Deconectat

Mesaje: 49



Vezi Profilul
« Răspunde #39 : Iunie 23, 2010, 21:45:44 »

pentru ca  trebuie sa fie in oridinea di numarul initial cifrele;)
cu un back iau 20 pkt si restu tle... da nush dc ma jmir la 10000 de cifre
Memorat
gabitzish1
Moderatori infoarena
Nu mai tace
*****

Karma: 321
Deconectat Deconectat

Mesaje: 926



Vezi Profilul
« Răspunde #40 : Iunie 24, 2010, 07:25:12 »

Of of..  Aha Nu ti-a venit tie o idee mai buna decat backtracking?
Citeste pe forum si subiectul "528 Trompeta", si daca tot nu te ajuta, citeste articolul de solutii al concursului la care s-a dat problema Trompeta(ceva autumn warmup).
Memorat
DEYDEY2
Strain
*

Karma: 1
Deconectat Deconectat

Mesaje: 49



Vezi Profilul
« Răspunde #41 : Iunie 24, 2010, 12:15:26 »

Smile)Smile)Smile)Smile) da si eu m-am gandit ca-i ciudata ideea da am fost curios cat iau Thumb down Thumb down Thumb down
oricum am incercat altceva si asta are doar 3 tle si nush dc...
Memorat
DEYDEY2
Strain
*

Karma: 1
Deconectat Deconectat

Mesaje: 49



Vezi Profilul
« Răspunde #42 : Iunie 25, 2010, 16:36:53 »

k Very Happy
scuze Very Happy nu inteleg ce-i gresit la codul meu...
« Ultima modificare: Iunie 25, 2010, 17:15:20 de către Tudorica Andrei » Memorat
SpiderMan
Nu mai tace
*****

Karma: -463
Deconectat Deconectat

Mesaje: 937



Vezi Profilul
« Răspunde #43 : Iunie 25, 2010, 16:55:33 »

Stii ca testele nu se fac publice ( inclusiv in particular ) . Si editeaza-ti mesajele  Thumb up
Memorat
DEYDEY2
Strain
*

Karma: 1
Deconectat Deconectat

Mesaje: 49



Vezi Profilul
« Răspunde #44 : Iunie 25, 2010, 17:36:13 »

am folosito varianta prin care declar k minime si le stergdin sir...
imi pate da cineva va rog un exemmpu care nu ar merge??
Memorat
andrei.finaru
Strain
*

Karma: 8
Deconectat Deconectat

Mesaje: 26



Vezi Profilul
« Răspunde #45 : August 24, 2010, 15:01:55 »

Am o problema: nu mai stiu cum exact transform un char in int, atunci cand charul memoreaza o cifra. Eu tineam minte ca trebuie sa scazi caracterul '48', adica '0'-'48'=0, '1'-'48'=1 etc, si intr-adevar cu aceasta implementare la mine afiseaza rezultatele corecte la toate testele pe care i le dau. Totusi, cand incarc sursa, evaluatorul ma anunta ca raspunsul e incorect. Nu e bun '48'-ul? Si daca nu, cum e corect?
Memorat
blasterz
Nu mai tace
*****

Karma: 92
Deconectat Deconectat

Mesaje: 255



Vezi Profilul
« Răspunde #46 : August 24, 2010, 15:27:47 »

daca e cifra pui

int c = int (cifra - '0' );

daca e litera mica

int c = int (cifra - 'a');

iar daca e litera mare

int c = int (cifra - 'A');
Memorat
devilkind
Echipa infoarena
Nu mai tace
*****

Karma: 284
Deconectat Deconectat

Mesaje: 1.240



Vezi Profilul
« Răspunde #47 : August 24, 2010, 22:01:42 »

De fapt acel 48 de care tineai tu minte e codul ascii al lui '0', doar ca nu trebuie sa scazi '48' ci tre sa scazi 48 (numarul nu stringul).
Ex:
'6' - 48 = 6
Memorat
SpiderMan
Nu mai tace
*****

Karma: -463
Deconectat Deconectat

Mesaje: 937



Vezi Profilul
« Răspunde #48 : August 25, 2010, 09:16:45 »

Reiau ce spunea Savin, este o diferenta mare intre '0' si 0. '0' ( cu ghilimele ) reprezinta caracterul cu codul ASCII 48, iar 0 ( fara ghilimele ) reprezinta codul ASCII al caracterului corespunzator ( in acest caz este caracterul NULL ) . Daca faci spre exemplu un char h = '0' si il afisezi ca si char ( "%c" ) , o sa se afiseze 0 pe ecran ( fara ghilimele ) , iar daca afisezi ca si int ( "%d" ) , o sa se afiseze 48. Daca faci un char h = 50, si il afisezi pe ecran ca si char o sa se afiseze 2 ( fara ghilimele ) , iar daca afisezi ca si int o sa se afiseze 50.
Si in legatura cu relatiile date de Mircea, nu trebuie pus int ( ) , e destul sa faci int c = cifra - '0' ( int c = cifra - 48 ) .
Memorat
andrei.finaru
Strain
*

Karma: 8
Deconectat Deconectat

Mesaje: 26



Vezi Profilul
« Răspunde #49 : August 25, 2010, 10:14:17 »

Multumesc pentru toate lamuririle Applause. Am reusit sa iau 100  Yahoo!
Memorat
Pagini: 1 [2] 3   În sus
  Imprimă  
 
Schimbă forumul:  

Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines