Nu ești un membru încă? Înregistrează-te acum!
Creează un cont nou  

Ai nevoie de ajutor la teme?

#1
Da.. stiu. Scoala asta, nu? Teme..referate.. de toate. Pai daca ai nevoie de ajutor la teme, aici e locul potrivit 3 Utilizatorii te vor ajuta la teme, cat pot ei mai bine. Smile Si tu poti ajuta la randul tau. 3
Este simplu. Sa vedem...

alegeti:

1. Materiile:

Desen
Romana
Matematica
Fizica
Chimie
Pictura
Religie
Biologie
Istorie
Informatica:
( in caz de aveti o problema de mate asa vedeti aici: ( miltumim Kashim )
Citat:Miruna a găsit pe fundul mării o matrice cu n linii şi m coloane având elementele numere naturale. Din motive necunoscute, Mirunel vrea să afle care este cea mai mare submatrice pătratică ce conţine maxim k numere distincte.

Cerinţă
Scrieţi un program care să determine latura maximă a unei submatrice care respectă condiţiile lui Mirunel.

Date de intrare
Fişierul de intrare submatrix1.in conţine pe prima linie trei numere naturale n, m şi k separate prin câte un singutr spaţiu având semnificaţia din enunţ. Pe următoarele n linii se găsesc câte m numere naturale separate prin spaţiu reprezentând valorile din matrice.

Date de ieÅŸire
Fişierul de ieşire submatrix1.out va conţine o singură linie pe care va fi scris un singur număr natural, latura submatricei căutate.

Restricţii
1 ≤ n, m ≤ 300
1 ≤ k ≤ n * m
Elementele matricei sunt numere naturale ce pot fi memorate pe 32 de biţi.
Pentru 30% din teste 1 ≤ n, m ≤ 30
Pentru 70% din teste 1 ≤ n, m ≤ 150

alt ceva

2. Intrebarea ta, exercitiul, tema, etc.

* Cine vrea sa se inscrie sa ajute, este bine venit:

Desen- Artist,
Romana-Artist, deeaH2elen
Matematica
Fizica
Chimie
Pictura-Artist,
Religie- deeaH2elen ,
Biologie
Istorie-Artist, deeaH2elen
Informatica:

Voi mai adauga nume de materii pe parcurs, la cerere Smile
Succes si astept intrebari si sa vad cum ne ajutam reciproc 3 Succes la invatat 3

[edit] Daca sunteti interesati sa ajutati, puteti sa spuneti si la ce materie puteti ajuta, foarte bine, ca sa va notez 3 :X

#2
Hai sa fiu primul care profita.

Info.

enunt
Citat:Miruna a găsit pe fundul mării o matrice cu n linii şi m coloane având elementele numere naturale. Din motive necunoscute, Mirunel vrea să afle care este cea mai mare submatrice pătratică ce conţine maxim k numere distincte.

Cerinţă
Scrieţi un program care să determine latura maximă a unei submatrice care respectă condiţiile lui Mirunel.

Date de intrare
Fişierul de intrare submatrix1.in conţine pe prima linie trei numere naturale n, m şi k separate prin câte un singutr spaţiu având semnificaţia din enunţ. Pe următoarele n linii se găsesc câte m numere naturale separate prin spaţiu reprezentând valorile din matrice.

Date de ieÅŸire
Fişierul de ieşire submatrix1.out va conţine o singură linie pe care va fi scris un singur număr natural, latura submatricei căutate.

Restricţii
1 ≤ n, m ≤ 300
1 ≤ k ≤ n * m
Elementele matricei sunt numere naturale ce pot fi memorate pe 32 de biţi.
Pentru 30% din teste 1 ≤ n, m ≤ 30
Pentru 70% din teste 1 ≤ n, m ≤ 150
stiu, nu-ti iese totul mereu, dar azi intra

#3
Kashime' mersi mult, mult :X
La ce materie si pentru ce clasa este??? Ca sa stiu 4 [post prea scurt.. lalalalalalalalalal...]
Va astept si cu exersitii rezolvate deja, pentru ori ce materie 3

succes tuturor la scoala 3

#4
ray: da, mersi 3

Pai ,am creeat acest topic pentru ca userii sa se ajute, nu sa devina roboti pentru altii si sa le faca temele. Nu. Pentru putinul ajutor pe care il dau. Din cate stiu, profesorii mei, in general cel de matemaTICA, NU NE dadea teme chiar din lectiile facute. Ne dadea inainte chiar, fara sa stim pe ce lume traim. Asa ca nu toti profesorii se ggandesc daca copii au stiut sau nu. Fostul meu prof. de mate, ne punea 4 daca nu faceam un exercitiu, chiar daca nu il stiam. Din pacate exista si astfel de profesori, si cam de aceea am deschis acest topic. Nu cred ca toti pot sa isi faca tema daca nu au teorie, sau exercitii asemanatoare? nu?
Citat:Chiar exista persoane care daca nu stiu cum sa-si faca tema intreaba pe altii in loc sa nu si-o mai faca O_O" ?...

Da, exista si nu este o rusine ca unii nu pricep repede ca altii.Cx dee aceea am deschis acest theard, ca sa ne ajutam unii pe altii. ^^

#5
screw me... ce tema ai dat si tu kashim.... in mare am facut codul, doar ca imi trebuie un submatrix.in ca sa il testez, da-mi asta si corectez (e netestat, poate merge, poate nu, dar de compilat compileaza)
scriu cu <code> ca sa mi se pastreze indentarea...
Cod:
#include <cstdlib>
#include <iostream>
#include <fstream>
#include <algorithm>

using namespace std;

class raspuns
{
public:
      int x, y, lung;
      raspuns()
      {x=0;
      y=0;
      lung=0;}
      void set(raspuns var)
           {x=var.x;
           y=var.y;
           lung=var.lung;}
      void set(int a, int b, int c)
          {x=a;
           y=b;
           lung=c;}
};

int a[300][300],m,n,k;
raspuns rasp;

int numere_distincte(raspuns var)
{
    int i,j,w, distincte = 0, numere[9000],ok;
    for(i=0;i<var.lung;i++)
        for(j=0;j<var.lung;j++)
            {ok=1;
             for(w=0;w<distincte;w++)
             if(a[var.x+i][var.y+j] == numere[w]) ok=0;
             if(ok)
                 {
                  numere[distincte+1] = a[var.x+i][var.y+j];
                  distincte++;}
                  }
    return distincte;
}

bool valid (raspuns var)
{
     if(var.lung < 1) return 0;
     if(var.lung < rasp.lung) return 0;
     if(var.x + var.lung >= m) return 0;
     if(var.y + var.lung >= n) return 0;
     if(numere_distincte(var) > k ) return 0;
     return 1;
}
    

void back(raspuns var)
{
     if ( var.x < m-rasp.lung +1 )
      {if(var.lung <1)
        {var.y++;
        if(var.y>m)
           {var.y=0;
           var.x++;}
        var.lung = min(m-var.x,n-var.y);
        }
     if(valid (var))
         rasp.set(var);
     var.lung--;
     back(var);
     }
    
    
    
    
     ;}
    
    

int main(int argc, char *argv[])
{
    ifstream in_file("submatrix1.in");
    ofstream out_file("submatrix1.out");
    
    in_file>>m>>n>>k;
    int i,j;
    for(i=0;i<m;i++)
        for(j=0;j<n;j++)
            in_file>>a[i][j];
    raspuns var;
    var.set(0,0,0);
    back(var);
    out_file << rasp.lung;
    in_file.close();
    out_file.close();
}


edit: mda, codul nu merge, fac debugging acuma...
edit2: lol, codul mergea bine, gresisem eu ca denumisem fisieru submatrix.in si nu submatrix1.in si nu imi vedea fisierul 24, mama ce bula sunt...
oricum, am un program care sa poata genera un fisier de intrare...
Cod:
#include <cstdlib>
#include <iostream>
#include <fstream>
#include <ctime>

using namespace std;

int main(int argc, char *argv[])
{
    int m,n,k,i,j;
    ofstream out_file("submatrix1.in");
    srand ( time(NULL) );
    cout<< "introdu valoarea lui m: ";
    cin>>m;
    cout<< "introdu valoarea lui n: ";
    cin>>n;
    cout<< "introdu valoarea lui k: ";
    cin>>k;
    out_file << m << " " << n << " " << k << endl;
    for(i=0;i<m;i++)
         {for(j=0;j<n;j++)
                 out_file << abs(rand() % 10) << " ";
         out_file << endl;}
    cout << "Done!"<<endl;
    
    system("PAUSE");
    return EXIT_SUCCESS;
}

#6
@Tan: Nu stiu daca a fost bine sa il faci cu clase...
Nu sunt la curent cu ce se face acum la liceu, dar programarea orientata pe obiecte am invatat-o tocmai in anul 2 de facultate... s-ar putea sa bata la ochi daca se duce cu un asemenea program.

#7
mai bine ma impusc decat sa refac, uite, gandeste-te ca fara clase ar trebui sa inlocuiesc fiecare variabila raspuns cu varx, vary, varlung, si micromanagementul m-ar fi omorat >.>

sa posteze kashim, daca chiar e ciudat cu clasa o sa refac maine...
PS: eu stiam clasele in a 10-a....

#8
@Tan. Nu stiu ce sa spun de problema lui Kashim, dupa cum e scrisa mi se pare ca ar fi de olimpiada, doar acolo se specifica exact care sunt datele de iesire, de intrare si restrictiile alea. Daca e de olimpiada, atunci teoretic ar trebui sa fie la nivel de clasa a noua, pentru ca la olimpiada din a zecea se dau deja siruri de caractere, nu se mai lucreaza cu numere naturale. Iar in clasa a noua cu siguranta nu se invata ce ai scris tu pe acolo.

@kashim: Chiar ai primit ca tema problema aia?
Tenderest touch leaves the darkest of marks,
And the kindest of kisses break the hardest of hearts
~Florence + The Machine


#9
kashim e la intensiv info... si astia de la intensiv info au obiceiul sa primeasca teme de pe net, si nu e de olimpiada ca acolo ai si restrictii de cata memorie / timp de rulare poti folosi. algoritmul facut de mine e unul de baza care nu e deloc eficient...

#10
Bine... deci.. as avea nevoie de ajutor, nu pentru mine, pentruu sora mea, de 12 ani. Nu le are cu engleza, si ar trebui sa faca o tema, compunere, despre camera ei. Puteti sa ii dati niste cuvinte cheie, sau sa o ajutati cu cateva propozitii?? 4

Multumesc anticipat. ^^
[Imagine: 435807fbnxzdbgby.gif]
[Imagine: 1370639wghbdmxzm0.gif]




Utilizatori care citesc acest subiect:
3 Vizitator(i)