Afişează mesaje
|
Pagini: [1]
|
3
|
infoarena - concursuri, probleme, evaluator, articole / Infoarena Monthly 2012 / Răspuns: Paranteze2
|
: Februarie 20, 2012, 19:50:52
|
Pentru exemplu.. Subsecventele nu sunt 1-2, 1-5,1-6,3-5,3-6,4-5,4-6 ? Altfel ,eu nu inteleg
|
|
|
5
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva educationala / Răspuns: 017 Combinari
|
: Noiembrie 30, 2011, 21:39:00
|
Am vazut ca nu s-a mai raspuns de 120 de zile ,dar am zis sa incerc.. Problema o rezolvai altfel,dar ma intreb de ce pentru sursa urmatoare iau 0 puncte.Am consultat atasamentele si,pentru cel putin primele 2 teste rezultatul e corect. Ce gresesc ? Fac aranjamente,singura diferenta e in functia valid(). #include<fstream> using namespace std; fstream f("combinari.in",ios::in); fstream g("combinari.out",ios::out); int n,p,st[100];
void tipar() { int i; for(i=0; i<p; i++) g<<st[i]<<" "; g<<"\n"; }
void init(int k) { st[k]=0; }
int succesor(int k) { if(st[k]<n) { st[k]++; return 1; } else return 0; }
int valid(int k) { if(k>0) if(st[k-1]>st[k]) return 0; return 1; }
void back(int k) { if(k==n) tipar(); else { init(k); while(succesor(k)) if(valid(k)) back(k+1); } }
int main() { f>>n>>p; back(0); f.close(); g.close(); return 0; }
|
|
|
|