Pagini: 1 [2]   În jos
  Imprimă  
Ajutor Subiect: 312 Sume 2  (Citit de 9460 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
Bogdan_tmm
De-al casei
***

Karma: 4
Deconectat Deconectat

Mesaje: 122



Vezi Profilul
« Răspunde #25 : August 15, 2011, 00:42:41 »

Sa zicem ca suma fixata este S. Pentru a afla cate sume sunt mai mici ca aceasta, pentru fiecare element din vector trebuie sa vedem cate elemente din acelasi vector sunt mai mici sau egale cu S - element_curent si cate sunt strict  mai mici decat S - element_curent. Sumele acestor valori sa le notam cu upper si lower. Tot ce mai trebuie facut este sa verificam daca lower < k && k <= upper.
« Ultima modificare: August 15, 2011, 08:29:21 de către Tarca Bogdan » Memorat
CosminRusu
De-al casei
***

Karma: 77
Deconectat Deconectat

Mesaje: 104



Vezi Profilul
« Răspunde #26 : Decembrie 20, 2011, 17:44:04 »

Cod:
#include <fstream>
using namespace std;
int main()
{
    ifstream cin("sume2.in");
    ofstream cout("sume2.out");
    int A[100005], i, j, S[100005], o, aux, a=0;
    long long k, n;
    cin>>n;
    cin>>k;
    for(i=1;i<=n;i++)
      cin>>A[i];
    for(i=1;i<=n;i++)
     {
       for(j=1;j<=n;j++)
          S[j+a]=A[i]+A[j];
       a=i*n;
     } 
do
{
 o=1;
 for(i=1;i<n*n;i++)
  if(S[i]>S[i+1])
  {
   o=0;
   aux=S[i];
   S[i]=S[i+1];
   S[i+1]=aux;
   }
}while(!o);
cout<<S[k]<<"\n";
cin.close();
cout.close();

return 0;
}


Ce am gresit ? La celelalte 8 imi da Killed by signal! Whistle
Memorat
klamathix
Echipa infoarena
Nu mai tace
*****

Karma: 733
Deconectat Deconectat

Mesaje: 1.216



Vezi Profilul
« Răspunde #27 : Decembrie 20, 2011, 18:48:43 »

N-ul e 50 000. Ce-ti spune asta despre N ^ 2?
Memorat
teodor98
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #28 : Ianuarie 28, 2014, 19:47:16 »

Am probleme cu limitele  Brick wall daca pun int iau 40p ( http://www.infoarena.ro/job_detail/1088260 ) , daca pun unsigned int iau 60p (http://www.infoarena.ro/job_detail/1088263) cu killbysem la primele 4 pot (  Brick wall  Brick wall  Brick wall ) si daca pun long long iau 0p  Think
Memorat
freak93
Echipa infoarena
Nu mai tace
*****

Karma: 342
Deconectat Deconectat

Mesaje: 819



Vezi Profilul
« Răspunde #29 : Ianuarie 29, 2014, 14:04:49 »

Nu e de la limite. Ai tu greseli in program. Ti-am gasit destul de repede greseala in program si nu iti voi spune care este dintr-un motiv foarte simplu. NU inveti nimic din asta.

 Incearca sa te uiti prin codul tau la fiecare linie scrisa sa-ti gasesti greseala. Daca nu poti asa, invata sa-ti scrii un generator de teste, pentru problema asta e foarte simplu, functiile srand si rand (le poti cauta pe cplusplus.com) sunt aici ca sa te ajute. Dupa poti sa faci si un mini-evaluator (un program care genereaza, ruleaza sursa ta si iti spune daca a rulat bine sau nu), unde aici iti este prietena functia system (pe care din nou o poti cauta pe cplusplus.com). Rog si ca nimeni altcineva sa nu-ti raspunda exact cu problema insasi, singura chestie pe care o castigi sunt inca 40 de puncte, cand ai putea castiga niste experienta.
Memorat
Djok
Client obisnuit
**

Karma: 10
Deconectat Deconectat

Mesaje: 71



Vezi Profilul
« Răspunde #30 : August 31, 2014, 10:12:30 »

Complexitatea necesară pentru 100p este O(N logN)?
Cu O(N log^2N) iau doar 60p Sad  Brick wall

Edit: am optimizat un pic, și a mers.
« Ultima modificare: August 31, 2014, 12:23:43 de către LASM.Motroi Valeriu » Memorat
dragona15
Strain


Karma: 0
Deconectat Deconectat

Mesaje: 1



Vezi Profilul
« Răspunde #31 : Martie 18, 2015, 19:23:57 »

Poate sa ma ajute si pe mine cineva cu problema asta imi trebuie o varianta cat mai optima?
Memorat
Pagini: 1 [2]   În sus
  Imprimă  
 
Schimbă forumul:  

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