AlexAvram

dumitras 12.06 problema bac III.3

Jun 12th, 2026
36
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.40 KB | None | 0 0
  1. #include <iostream>
  2. #include <fstream>
  3.  
  4. using namespace std;
  5. ofstream fout("BAC.TXT");
  6. /*
  7. toate numerele de 5 cifre
  8. suma primelor 2=s1
  9. suma ultimelor 2=s2
  10. */
  11.  
  12. struct pereche
  13. {
  14.     int prim, ult;
  15. }nr1[10], nr2[10];
  16.  
  17. int main()
  18. {
  19.     int s1, s2; cin>>s1>>s2;
  20.     int cnt1=0, cnt2=0;
  21.     ///determinare perechi convenabile
  22.  
  23.     int stop; stop=min(9, s1);
  24.     /* am grija unde ma opresc
  25.     sa nu trec pe valori negative*/
  26.  
  27.     for (int i=1; i<=stop; i++)
  28.     {//prima cifra nu poate fi 0
  29.         if (s1-i<10)//vreau doar cifre, nu numere
  30.         {
  31.             ++cnt1;
  32.             nr1[cnt1].prim=i;
  33.             nr1[cnt1].ult=s1-i;
  34.         }
  35.     }
  36.     stop=min(9, s2);
  37.     for (int j=0; j<=stop; ++j)
  38.     {
  39.         if (s2-j<10)
  40.         {
  41.             ++cnt2;
  42.             nr2[cnt2].prim=j;
  43.             nr2[cnt2].ult=s2-j;
  44.         }
  45.     }
  46.     ///
  47.  
  48.     int val;
  49.     /*efectiv formez numerele
  50.     prima data derulez cifrele de ordin mai mic
  51.     pentru a pastra ordinea crescatoare*/
  52.  
  53.     for (int i=1; i<=cnt1; ++i)//maxim 11 cred
  54.     {
  55.  
  56.         for (int k=0; k<=9; ++k) //10
  57.         {
  58.             for (int j=1; j<=cnt2; ++j) //tot pe acolo
  59.             {
  60.                 val=nr2[j].ult+nr2[j].prim*10+k*100+nr1[i].ult*1000+nr1[i].prim*10000;
  61.                 fout<<val<<'\n';
  62.             }
  63.         }
  64.     }
  65.  
  66.     ///rezulta o complexitate aproximativa de 10^3
  67.  
  68.     return 0;
  69. }
  70.  
Advertisement
Add Comment
Please, Sign In to add comment