•pauldb
|
 |
« Răspunde #100 : August 22, 2010, 00:52:21 » |
|
Da.
|
|
|
Memorat
|
Am zis 
|
|
|
•zeroblitz36
Strain
Karma: -5
Deconectat
Mesaje: 18
|
 |
« Răspunde #101 : Februarie 25, 2011, 16:43:32 » |
|
Incredibil dar aceasta problema am rezolvato in O(n*log n + n^6) cu 100p. Daca nu ma credeti, uitativa la algoritmul postat de mine.
|
|
|
Memorat
|
|
|
|
•silidragos
Strain
Karma: 0
Deconectat
Mesaje: 1
|
 |
« Răspunde #102 : Martie 20, 2011, 00:49:23 » |
|
Trebuie sa aiba cel putin un numar de fiecare?
|
|
|
Memorat
|
|
|
|
|
•pauldb
|
 |
« Răspunde #104 : Noiembrie 05, 2011, 01:49:56 » |
|
Daca folosesti hashing ai complexitate O(N^3), in loc de O(N^3logN).
|
|
|
Memorat
|
Am zis 
|
|
|
•wefgef
|
 |
« Răspunde #105 : Noiembrie 05, 2011, 09:36:42 » |
|
Treci pe C++ 
|
|
|
Memorat
|
omului i-au fost date instinctele pentru a supravietui, nu pentru a fi sclavul lor.
|
|
|
•dutzul
|
 |
« Răspunde #106 : Ianuarie 18, 2012, 19:34:48 » |
|
LOL la naiba ma uitam si nu stiam unde imi greseste programu.. eu foloseam cautare binara dar uitam sa sortez vectoru)) 
|
|
|
Memorat
|
|
|
|
•dutzul
|
 |
« Răspunde #107 : Ianuarie 18, 2012, 19:36:41 » |
|
apropo mia dat tle pe 5 teste cand declaram variabililele long long in loc de int hmm nu stiam ca merge mai incet
|
|
|
Memorat
|
|
|
|
•fhandrei
Strain
Karma: -15
Deconectat
Mesaje: 3
|
 |
« Răspunde #108 : August 19, 2012, 21:27:50 » |
|
Are cineva vreo idee de ce iau doar 95p pe sursa asta? http://infoarena.ro/job_detail/780132Sau vreo propunere de eficientizare?
|
|
|
Memorat
|
|
|
|
•tzipleatud
|
 |
« Răspunde #109 : August 19, 2012, 21:46:37 » |
|
Salut! Incearca sa implementezi cu hash-uri sau pur si simplu sa folosesti un vector, pe care mai apoi il sortezi, in detrimentul Set-ului din STL. Bafta! 
|
|
|
Memorat
|
|
|
|
•Schumi
Client obisnuit

Karma: 36
Deconectat
Mesaje: 74
|
 |
« Răspunde #110 : August 19, 2012, 21:50:34 » |
|
Nu e nevoie de hashuri. Eu am luat 100 fara. Cred ca trebuie doar sa scapi de set 
|
|
|
Memorat
|
|
|
|
•fhandrei
Strain
Karma: -15
Deconectat
Mesaje: 3
|
 |
« Răspunde #111 : August 20, 2012, 23:51:26 » |
|
Mersi, am luat 100 cu vectori... Dar nu inteleg de ce ar fi mai eficienti decat seturile, ca ele ma scapau de sumele duble si in plus sorteaza cu complexitate mai buna decat sort-ul pe vectori, fiind log1 + log2 + ... pana la lungimea finala a setului, ceea ce e mai putin decat nlogn
|
|
|
Memorat
|
|
|
|
•klamathix
|
 |
« Răspunde #112 : August 21, 2012, 00:01:09 » |
|
Set-ul are constanta mare. Fiind arbore de cautare, sunt ceva operatii acolo sa-l tina echilibrat. In general daca aveti nevoie doar sa sortati lucruri/extrageti cateva minime folositi sortari efective sau priority_queue care sunt dedicate si nu fac munca-n plus.
|
|
|
Memorat
|
|
|
|
•wefgef
|
 |
« Răspunde #113 : August 21, 2012, 00:04:38 » |
|
Mersi, am luat 100 cu vectori... Dar nu inteleg de ce ar fi mai eficienti decat seturile, ca ele ma scapau de sumele duble si in plus sorteaza cu complexitate mai buna decat sort-ul pe vectori, fiind log1 + log2 + ... pana la lungimea finala a setului, ceea ce e mai putin decat nlogn
Setul nu "sorteaza" intr-o complexitate mai buna decat algoritmii clasici de sortare (inclusiv cel implementat in STL), este tot O(N log N). Poti citi mai multe despre complexitati in Cormen.
|
|
|
Memorat
|
omului i-au fost date instinctele pentru a supravietui, nu pentru a fi sclavul lor.
|
|
|
•valentinradu
Strain
Karma: 0
Deconectat
Mesaje: 1
|
 |
« Răspunde #114 : Octombrie 07, 2014, 23:18:01 » |
|
Are cineva vreo idee de ce iau numai 5 puncte pe asa ceva? #include <iostream> #include <fstream> #include <algorithm> using namespace std; ifstream f("loto.in"); ofstream g("loto.out"); int n, S, a[101], i, b[7]; int descresc(int a, int b) { return a > b; } int cresc(int a, int b) { return a < b; } int vt = 0; int term = 1; void proc(int k, int Sx, int pos) { if (term) { if (b[1] != 0 && b[2] != 0 && b[3] != 0 && b[4] != 0 && b[5] != 0 && b[6] != 0) { term = 0; sort(b + 1, b + 7, cresc); int v = 0; for (i = 1; i <= 6; i++) v += b[i]; if (v == S) { for (i = 1; i <= 5; i++) g << b[i] << " "; g << b[6]; vt = 1; f.close(); g.close(); exit(0); } else vt = 0; } for (int i = k + 1; i <= n; i++) { if (a[i] <= Sx) { if (Sx - a[i] >= 0) { b[pos] = a[i]; proc(i - 1, Sx - a[i], pos + 1); } else { proc(i, Sx, pos + 1); } } } }
} int main() { f >> n >> S; for (i = 1; i <= n; i++) f >> a[i]; sort(a + 1, a + n + 1, descresc); for (int t = 0; t < n; t++) { proc(t, S, 1); for (int l = 1; l <= 6; l++) b[l] = 0; } if (vt == 0) g << "-1"; return 0; }
|
|
|
Memorat
|
|
|
|
•iulius312
Strain
Karma: 0
Deconectat
Mesaje: 2
|
 |
« Răspunde #115 : Octombrie 23, 2015, 09:55:12 » |
|
Este obligatoriu ca cele N numere sa fie toate prezente pe biletul loto? De ex. avem 4 numere: 1,2,3,4 si suma 13. Biletul loto poate fi: 1,1,2,3,3,3 ?
|
|
|
Memorat
|
|
|
|
•theprdv
Strain
Karma: -1
Deconectat
Mesaje: 11
|
 |
« Răspunde #116 : Octombrie 30, 2015, 21:53:25 » |
|
nu, nu este obligatoriu sa ai toate cele N nr.. de ex daca ai N = 43 poti alege de 6 ori numarul de pe pozitia 1 si inca ceva: testele nu verifica situatia prezentata mai sus, cazul in care se ia de 6 ori acelasi nr. Solutia care verifica acest lucru ( http://www.infoarena.ro/job_detail/1514247 ) ia tot 100 ca cea care nu verifica: http://www.infoarena.ro/job_detail/1514257 (verifica doar pt ultima pozitie)
|
|
|
Memorat
|
|
|
|
|