Afişează mesaje
|
Pagini: 1 2 [3] 4
|
68
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 272 Bridge
|
: Iulie 13, 2012, 09:47:10
|
:Dsalutare.sunt nou in programarea dinamica In legatura cu problema aceasta.Mi-am dat seama de recurenta ,dar cu ce ar trebui sa initializez matricea la inceput:? adica pt scandurile de tip 0,1,3 sa pun 1? intreb asta deoarece daca nu pun nimic in matrice la inceput ,dupa ce fac dinamica matricea are doar 0 in ea(si e normal neavand nici o valoare de inceput); Multumesc Anticipat!!!
|
|
|
69
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 869 Reinvent
|
: Iulie 12, 2012, 08:02:37
|
Eu n-am parsat citirea dar ca sa sar de la 90 la 100 a fost nevoie sa fac coada "de mana".
am facut coada de mana ....tot 60 pct Incearca sa parsezi citirea. Eu doar asa am reusit sa iau 100, si peste cate surse de 100 p m-am uitat, toti au parsat citirea. Bafta! care este faza cu parsatul citirii?imi poate da cineva un exemplu Multumesc!!!
|
|
|
71
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 290 Gandaci Java
|
: Iulie 05, 2012, 22:01:00
|
:'(am verificat de 100 ori sursa si nu vad o greseala.rog un admin sa se uite peste sursa sa vada ce am gresit Multumesc anticipat! #include<fstream> #include<cstring> #include<vector>
#define NN 10001 #define pb push_back
using namespace std; ofstream out("java.out");
int n,m,e,t,uz[NN],dr[NN],st[NN]; vector<int>G[NN]; typedef vector<int>:: iterator IT;
void read(); int pairup(int start); int facuplaj();
int main() { read(); return 0; }
int pairup(int start) { if(uz[start]) return 0; uz[start]=1; for(IT I=G[start].begin();I!=G[start].end();++I) if(!st[*I] || pairup(st[*I]) ) { st[*I]=start; dr[start]=*I; return 1; } return 0; }
int facuplaj() { int ok=1; int cuplaj=0; while(ok) { ok=0; memset(uz,0,sizeof(uz)); for(int i=1;i<=n;i++) if(!dr[i] && pairup(i)) { ++cuplaj; ok=1; } } return cuplaj; }
void read() { ifstream in("java.in"); in>>t; while(t) { in>>m>>n>>e; for(int x,y,i=1;i<=e;i++) { in>>x>>y; G[x].pb(y); } facuplaj(); int nrc=0; for(int i=1;i<=n;i++) if(dr[i]) ++nrc; out<<nrc<<'\n'; //out<<i<<" "<<dr[i]<<" "<<'\n';
t--; } }
|
|
|
72
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 899 Jsched
|
: Iulie 02, 2012, 09:42:33
|
Nu cred ca e bine cum spui tu, adica cu sortatul in ordine crescatoare in functie de x. Uite un contraexemplu:
2 2 3 1 6 2 7 100
Daca iei in ordine crescatoare obtii 1831. Se mai pot obtine si rezultate mai mici, precum: ..., 778, 766. Mai degraba as inclina sa sortez descrescator dupa y. L.E. Done! Nu era chiar asa, dar pe aproape cu acea sortare...
pana la urma cum trebuie sa sortezi? ](*,)am sortat in mai multe feluri.... imi dau bine pe testul de la problema(chiar si pe al tau) dar tot 0 iau
|
|
|
75
|
infoarena - concursuri, probleme, evaluator, articole / Arhiva de probleme / Răspuns: 899 Jsched
|
: Iunie 29, 2012, 21:56:27
|
Salut ! Ma poate ajuta si pe mine cineva? am sortat crescator dupa x i-ar in caz de egalitate descrescator dupa y. L.E. : Mi-a iesit pana la urma.
am sortat descrescator vectorul in functie de y iar in caz de egalitate crescator in functie de x Functia care calculeaza este urmatoare: .... for(int i=1;i<=n;i++) { int s=0; for(int j=1;j<=i;j++) s+=G[j].x; ans+=s*G .y; }
.. iau 0 pct si nu stiu dc Imi puteti da o sugestie? Multumesc anticipat!!!
|
|
|
|