Pagini: 1 ... 3 4 [5]   În jos
  Imprimă  
Ajutor Subiect: 027 Loto  (Citit de 46936 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
pauldb
Nu mai tace
*****

Karma: 821
Deconectat Deconectat

Mesaje: 1.901



Vezi Profilul
« Răspunde #100 : August 22, 2010, 00:52:21 »

Da.
Memorat

Am zis Mr. Green
zeroblitz36
Strain


Karma: -5
Deconectat Deconectat

Mesaje: 18



Vezi Profilul
« 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 Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #102 : Martie 20, 2011, 00:49:23 »

Trebuie sa aiba cel putin un numar de fiecare?
Memorat
ctlin04
Nu mai tace
*****

Karma: 23
Deconectat Deconectat

Mesaje: 207



Vezi Profilul
« Răspunde #103 : Noiembrie 05, 2011, 01:00:19 »

Poate sugera cineva vreo optimizare? Confused
http://infoarena.ro/job_detail/630272
« Ultima modificare: Noiembrie 05, 2011, 01:12:09 de către catalin » Memorat
pauldb
Nu mai tace
*****

Karma: 821
Deconectat Deconectat

Mesaje: 1.901



Vezi Profilul
« 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 Mr. Green
wefgef
Nu mai tace
*****

Karma: 1049
Deconectat Deconectat

Mesaje: 3.008


razboinicu' luminii


Vezi Profilul
« Răspunde #105 : Noiembrie 05, 2011, 09:36:42 »

Treci pe C++ Smile
Memorat

omului i-au fost date instinctele pentru a supravietui, nu pentru a fi sclavul lor.
dutzul
De-al casei
***

Karma: 42
Deconectat Deconectat

Mesaje: 119



Vezi Profilul
« 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)) Very Happy
Memorat
dutzul
De-al casei
***

Karma: 42
Deconectat Deconectat

Mesaje: 119



Vezi Profilul
« 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 Deconectat

Mesaje: 3



Vezi Profilul
« 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/780132
Sau vreo propunere de eficientizare?
Memorat
tzipleatud
De-al casei
***

Karma: 104
Deconectat Deconectat

Mesaje: 117



Vezi Profilul
« Răspunde #109 : August 19, 2012, 21:46:37 »

Are cineva vreo idee de ce iau doar 95p pe sursa asta? http://infoarena.ro/job_detail/780132
Sau vreo propunere de eficientizare?

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! Smile
Memorat
Schumi
Client obisnuit
**

Karma: 36
Deconectat Deconectat

Mesaje: 74



Vezi Profilul
« 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 Smile
Memorat
fhandrei
Strain


Karma: -15
Deconectat Deconectat

Mesaje: 3



Vezi Profilul
« 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
Echipa infoarena
Nu mai tace
*****

Karma: 733
Deconectat Deconectat

Mesaje: 1.216



Vezi Profilul
« 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
Nu mai tace
*****

Karma: 1049
Deconectat Deconectat

Mesaje: 3.008


razboinicu' luminii


Vezi Profilul
« 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 Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #114 : Octombrie 07, 2014, 23:18:01 »

Are cineva vreo idee de ce iau numai 5 puncte pe asa ceva?

Cod:
#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 Deconectat

Mesaje: 2



Vezi Profilul
« 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 Deconectat

Mesaje: 11



Vezi Profilul
« 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)
Cod:
Ex test:
3 12
10 2 50
Memorat
Pagini: 1 ... 3 4 [5]   În sus
  Imprimă  
 
Schimbă forumul:  

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