<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.algopedia.ro/wiki/index.php?action=history&amp;feed=atom&amp;title=Clasa_a_IX-a_lec%C8%9Bia_8</id>
	<title>Clasa a IX-a lecția 8 - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.algopedia.ro/wiki/index.php?action=history&amp;feed=atom&amp;title=Clasa_a_IX-a_lec%C8%9Bia_8"/>
	<link rel="alternate" type="text/html" href="https://www.algopedia.ro/wiki/index.php?title=Clasa_a_IX-a_lec%C8%9Bia_8&amp;action=history"/>
	<updated>2026-04-13T05:02:21Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.2</generator>
	<entry>
		<id>https://www.algopedia.ro/wiki/index.php?title=Clasa_a_IX-a_lec%C8%9Bia_8&amp;diff=18285&amp;oldid=prev</id>
		<title>Bella: /* Formula lui Legendre */</title>
		<link rel="alternate" type="text/html" href="https://www.algopedia.ro/wiki/index.php?title=Clasa_a_IX-a_lec%C8%9Bia_8&amp;diff=18285&amp;oldid=prev"/>
		<updated>2023-03-14T20:48:48Z</updated>

		<summary type="html">&lt;p&gt;&lt;span class=&quot;autocomment&quot;&gt;Formula lui Legendre&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;= Lectie =&lt;br /&gt;
==Descompunerea in factori primi ==&lt;br /&gt;
[https://www.pbinfo.ro/probleme/62/factorizare factorizare]&lt;br /&gt;
Se citeşte un număr natural n. Să se afişeze descompunerea în factori primi a lui n.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Pseudocod&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
  intreg n, d, p&lt;br /&gt;
  citeste n       &lt;br /&gt;
  d = 2&lt;br /&gt;
  while( d * d &amp;lt;= n )&lt;br /&gt;
    p = 0&lt;br /&gt;
    while( n % d == 0 )&lt;br /&gt;
      n = n / d&lt;br /&gt;
      p = p + 1   &lt;br /&gt;
    if( p &amp;gt; 0 )&lt;br /&gt;
      scrie d, &amp;quot; &amp;quot;, p&lt;br /&gt;
    d = d + 1&lt;br /&gt;
  if ( n &amp;gt; 1 )&lt;br /&gt;
   scrie  n, &amp;quot; &amp;quot;, 1&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
int main(){&lt;br /&gt;
  int n, d, p;&lt;br /&gt;
  scanf(&amp;quot;%d&amp;quot;,&amp;amp;n);         // cin &amp;gt;&amp;gt; n;&lt;br /&gt;
&lt;br /&gt;
  d = 2;&lt;br /&gt;
  while( d * d &amp;lt;= n ){&lt;br /&gt;
    p = 0;                // puterea la care apare d in descompunere&lt;br /&gt;
    while( n % d == 0 ){  // impartim repetat la d si numaram de cate ori n se imparte la d&lt;br /&gt;
      n = n / d;&lt;br /&gt;
      p = p + 1;&lt;br /&gt;
    }&lt;br /&gt;
    if( p &amp;gt; 0 )          ]// daca puterea este nenula, atunci d e factor prim&lt;br /&gt;
      printf( &amp;quot;%d %d\n&amp;quot;, d, p ); // tiparim factorul prim si puterea ( in c++ cout &amp;lt;&amp;lt; d &amp;lt;&amp;lt; &amp;quot; &amp;quot;&amp;lt;&amp;lt; p &amp;lt;&amp;lt;&amp;quot;\n&amp;quot;; )&lt;br /&gt;
    d = d + 1;           &lt;br /&gt;
 }&lt;br /&gt;
 if ( n &amp;gt; 1 )            // daca n &amp;gt; 1 atunci in n a mai ramas un factor prim la puterea 1&lt;br /&gt;
   printf( &amp;quot;%d 1&amp;quot;, n );  // cout &amp;lt;&amp;lt; n &amp;lt;&amp;lt; &amp;quot; &amp;quot; &amp;lt;&amp;lt; 1;&lt;br /&gt;
&lt;br /&gt;
 return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Variante de implementare a descompunerii in factori primi ==&lt;br /&gt;
Problema factorizare ne cere afisarea fiecarui factor prim si a puterii pe cate o linie. Este posibil insa ca formatul afisarii sa difere, de pilda, putin mai dificil, este sa afisam descompunerea in factori sub forma unui produs. Ex: Daca n = 12 vom afisa: 2^2 * 3. Putem observa ca in fata fiecarui factor va trebui sa afisam un semn *, mai putin in fata primului factor. &lt;br /&gt;
&lt;br /&gt;
====Varianta1 cu while-do ====&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Pseudocod&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
  intreg n, p, d, pas&lt;br /&gt;
  citeste n&lt;br /&gt;
  d = 2 &lt;br /&gt;
  pas = 1&lt;br /&gt;
  while( n &amp;gt; 1 )&lt;br /&gt;
    p = 0                 &lt;br /&gt;
    while( n mod d == 0 )&lt;br /&gt;
      n = n div d&lt;br /&gt;
      p = p + 1       &lt;br /&gt;
    if( p &amp;gt; 0 )          // daca am gasit un factor prim&lt;br /&gt;
      if( pas == 1 )     // daca e primul factor&lt;br /&gt;
        scrie d, &amp;quot;^&amp;quot;, p  // afisam factorul fara steluta in fata&lt;br /&gt;
        pas = pas + 1;   // modificam variabila stegulet&lt;br /&gt;
      else               // daca nu suntem la pasul 1&lt;br /&gt;
        scrie &amp;quot; * &amp;quot;, d , &amp;quot;^&amp;quot;, p  // afisam cu *&lt;br /&gt;
    d = d + 1;           &lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
#include&amp;lt;stdio.h&amp;gt;&lt;br /&gt;
int main(){&lt;br /&gt;
  int n, p, d, pas;&lt;br /&gt;
  scanf( &amp;quot;%d&amp;quot;, &amp;amp;n );    /// cin &amp;gt;&amp;gt; n;&lt;br /&gt;
  d = 2; pas = 1;&lt;br /&gt;
  while( n &amp;gt; 1 ){      /// cata vreme n nu a fost descompus&lt;br /&gt;
    p = 0;             /// impartim pe n la d de cate ori se poate&lt;br /&gt;
    while( n % d == 0 ){&lt;br /&gt;
      n= n / d;&lt;br /&gt;
      p = p + 1;       /// rezulta p, ca fiind puterea divizorului&lt;br /&gt;
    }&lt;br /&gt;
    if( p &amp;gt; 0 )&lt;br /&gt;
      if( pas == 1 ){&lt;br /&gt;
        printf(&amp;quot;%d^%d&amp;quot;, d, p);   /// cout &amp;lt;&amp;lt; d &amp;lt;&amp;lt; &amp;quot;^&amp;quot; &amp;lt;&amp;lt; p;&lt;br /&gt;
         pas = pas + 1;&lt;br /&gt;
      }&lt;br /&gt;
      else&lt;br /&gt;
        printf(&amp;quot;*%d^%d&amp;quot;, d, p);  ///  cout &amp;lt;&amp;lt; &amp;quot;*&amp;quot;&amp;lt;&amp;lt; d &amp;lt;&amp;lt; &amp;quot;^&amp;quot; &amp;lt;&amp;lt; p;&lt;br /&gt;
    d = d + 1;&lt;br /&gt;
  }&lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Putem privi afisarea de mai sus, ca o afisare la care dupa fiecare termen pun o steluta, mai putin dupa ultimul termen. Mai jos este implementarea acestei idei.&lt;br /&gt;
=== Varianta 2 ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
int main(){&lt;br /&gt;
  int n, d, p;&lt;br /&gt;
  scanf( &amp;quot;%d&amp;quot;, &amp;amp;n );   // cin&amp;gt;&amp;gt;n;&lt;br /&gt;
  d = 2;&lt;br /&gt;
  while( n != 1 ){&lt;br /&gt;
    p = 0;&lt;br /&gt;
    while( n % d == 0 ){&lt;br /&gt;
      n = n / d;&lt;br /&gt;
      p = p + 1;&lt;br /&gt;
    }&lt;br /&gt;
    if( p != 0 )&lt;br /&gt;
      if( n == 1 )                   // daca n a devenit 1, atunci am gasit un ultim factor&lt;br /&gt;
        printf( &amp;quot;%d^%d&amp;quot;, d, p );     // cout &amp;lt;&amp;lt; d &amp;lt; &amp;lt;&amp;quot;^&amp;quot; &amp;lt;&amp;lt; p;&lt;br /&gt;
      else&lt;br /&gt;
        printf( &amp;quot;%d^%d*&amp;quot;, d, p );    // cout &amp;lt;&amp;lt; d &amp;lt;&amp;lt; &amp;quot;^&amp;quot; &amp;lt;&amp;lt; p &amp;lt;&amp;lt; &amp;quot;*&amp;quot;;&lt;br /&gt;
    d = d + 1;&lt;br /&gt;
 }&lt;br /&gt;
 return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
====Varianta2 cu do-while ====&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main(){&lt;br /&gt;
  int n, d, p;&lt;br /&gt;
  scanf( &amp;quot;%d&amp;quot;,&amp;amp;n );   // cin &amp;gt;&amp;gt; n;&lt;br /&gt;
  d = 2;&lt;br /&gt;
  do{&lt;br /&gt;
    p = 0;&lt;br /&gt;
    while( n % d == 0 ){&lt;br /&gt;
      n = n / d;&lt;br /&gt;
      p = p + 1;&lt;br /&gt;
    }&lt;br /&gt;
    if(p != 0)&lt;br /&gt;
      if(n == 1)                   // ca am gasit un ultim factor&lt;br /&gt;
        printf( &amp;quot;%d^%d&amp;quot;, d, p );   // cout &amp;lt;&amp;lt; d &amp;lt;&amp;lt; &amp;quot;^&amp;quot; &amp;lt;&amp;lt;p;&lt;br /&gt;
      else&lt;br /&gt;
        printf( &amp;quot;%d^%d*&amp;quot;, d, p );  // cout &amp;lt;&amp;lt; d &amp;lt;&amp;lt; &amp;quot;^&amp;quot; &amp;lt;&amp;lt; p&amp;lt;&amp;lt; &amp;quot;*&amp;quot;;&lt;br /&gt;
    d = d + 1;&lt;br /&gt;
 }while( n != 1 );&lt;br /&gt;
 return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Divizori primi ==&lt;br /&gt;
Sa se afiseze cati divizori primi are un număr n.&lt;br /&gt;
Tendinta multora cand e vorba de aceasta problema este de a parcurge toti divizorii numarului si de a-i verifica pe fiecare in parte daca sunt primi. Nu trebuie insa decat sa descompunem in factori, folosind algoritmul precedent si sa numaram factorii primi gasiti.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main(){&lt;br /&gt;
  int n, d, p, nrdiv = 0;&lt;br /&gt;
  scanf( &amp;quot;%d&amp;quot;, &amp;amp;n );   &lt;br /&gt;
 &lt;br /&gt;
  d = 2;&lt;br /&gt;
  while( d * d &amp;lt;= n ){&lt;br /&gt;
    p = 0;&lt;br /&gt;
    while( n % d == 0 ){&lt;br /&gt;
      n = n / d;&lt;br /&gt;
      p = p + 1;&lt;br /&gt;
    }&lt;br /&gt;
    if( p &amp;gt; 0 )&lt;br /&gt;
      nrdiv = nrdiv + 1; &lt;br /&gt;
    &lt;br /&gt;
    d = d + 1;&lt;br /&gt;
  } &lt;br /&gt;
  if ( n &amp;gt; 1 )&lt;br /&gt;
   nrdiv = nrdiv + 1;&lt;br /&gt;
&lt;br /&gt;
  printf(&amp;quot;%d&amp;quot;, nrdiv );    &lt;br /&gt;
  return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Aplicatie: [https://www.pbinfo.ro/probleme/462/divprimmax divprimmax]&lt;br /&gt;
&lt;br /&gt;
== Cel mai mic divizor prim ==&lt;br /&gt;
Sa se afiseze cel mai mic divizor prim pe care il are un număr n.&lt;br /&gt;
Rezolvare1: Putem folosi algoritmul care determina divizorii unui numar din lectia precedenta, oprindu-ne la primul divizor gasit. Acesta va fi cu siguranta si divizor prim. &lt;br /&gt;
Rezolvare2: Ne vom folosi tot de descompunerea in factori primi, descompunere pe care o vom intrerupe cand am gasit primul factor primi. Iata o implementare a acestei idei.&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main(){&lt;br /&gt;
  int n, d, p, div = 0;&lt;br /&gt;
  scanf( &amp;quot;%d&amp;quot;, &amp;amp;n );    &lt;br /&gt;
  d = 2;&lt;br /&gt;
  while( d * d &amp;lt;= n &amp;amp;&amp;amp; !div ){&lt;br /&gt;
    p = 0;&lt;br /&gt;
    while( n % d == 0 ){&lt;br /&gt;
      n = n / d;&lt;br /&gt;
      p = p + 1;&lt;br /&gt;
    }&lt;br /&gt;
    if( p &amp;gt; 0 )&lt;br /&gt;
      div = d; &lt;br /&gt;
    &lt;br /&gt;
    d = d + 1;&lt;br /&gt;
  } &lt;br /&gt;
  if ( n &amp;gt; 1 )&lt;br /&gt;
   div = n;&lt;br /&gt;
  printf(&amp;quot;%d&amp;quot;, div );        &lt;br /&gt;
 &lt;br /&gt;
 return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Aplicatie: [https://www.pbinfo.ro/probleme/443/divizoriprimi divizoriprimi]&lt;br /&gt;
&lt;br /&gt;
== Cel mai mare divizor prim ==&lt;br /&gt;
Sa se afiseze cel mai mare divizor prim a unui număr n?&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;stdio.h&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main(){&lt;br /&gt;
  int n, d, p;&lt;br /&gt;
  scanf( &amp;quot;%d&amp;quot;, &amp;amp;n );&lt;br /&gt;
  int dmax;&lt;br /&gt;
  d = 2;&lt;br /&gt;
  while( d * d &amp;lt;= n ){&lt;br /&gt;
    p = 0;&lt;br /&gt;
    while( n % d == 0 ){&lt;br /&gt;
      n = n / d;&lt;br /&gt;
      p = p + 1;&lt;br /&gt;
    }&lt;br /&gt;
    if( p &amp;gt; 0 )&lt;br /&gt;
      dmax = d;&lt;br /&gt;
    d ++;&lt;br /&gt;
  }&lt;br /&gt;
  if ( n &amp;gt; 1 )&lt;br /&gt;
   dmax = n;&lt;br /&gt;
  printf(&amp;quot;%d&amp;quot;, dmax );&lt;br /&gt;
&lt;br /&gt;
 return 0;&lt;br /&gt;
}&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Aplicatie: [https://www.pbinfo.ro/probleme/1409/numere11 numere11]&lt;br /&gt;
&lt;br /&gt;
= Formule de calcul =&lt;br /&gt;
== Formula lui Legendre ==&lt;br /&gt;
Cu ajutorul acesteia determinam exponentul unui numar prim k in descompunerea in factori primi a lui n factorial. N factorial se noteaza cu n! si e produsul primelor n numere naturale.&lt;br /&gt;
&lt;br /&gt;
n! = 1 *2 * 3 * 4 * 5...* n&lt;br /&gt;
&lt;br /&gt;
Putem observa ca in sirul celor n numere vom avea din k in k cate un numar divizibil cu k, printre acestea sunt si numere divizibile cu k^2 (k la puterea a doua ), pentru care mai trebuie sa numaram cate un k pentru fiecare.&lt;br /&gt;
Cate numere sunt divizibile cu k pana la n? R: n/k&lt;br /&gt;
Dar cate numere sunt divizibile cu k * k pana la n ?  k^2 / n&lt;br /&gt;
Cati de k vom avea in aceste numere? k + k^2 / n (caten umere divizibile cu k si cate numere divizibile cu k^2)&lt;br /&gt;
Extindem aceasta idee gandindu-ne ca pana la n mai putem avea si numere divizibile cu k^3, k^4, astfel va trebui sa numaram si pentru acestea cate un k. Rezulta formula:&lt;br /&gt;
&lt;br /&gt;
exp = n/k + n/k^2 +.... + n/k^p, unde k^p &amp;lt;= n, altfel fractia ar deveni 0&lt;br /&gt;
&lt;br /&gt;
Aplicatie:[https://www.varena.ro/problema/exponent exponent]Se dă un număr natural n şi o cifră k din mulţimea {2, 3, 5, 7}. Se cere să se afişeze exponentul lui k în descompunerea în factori primi a produsului 1·2·3·...·n.&lt;br /&gt;
&amp;lt;syntaxhighlight&amp;gt;	&lt;br /&gt;
#include &amp;lt;fstream&amp;gt;&lt;br /&gt;
 &lt;br /&gt;
using namespace std;&lt;br /&gt;
ifstream fin (&amp;quot;exponent.in&amp;quot;);&lt;br /&gt;
ofstream fout (&amp;quot;exponent.out&amp;quot;);&lt;br /&gt;
int main(){&lt;br /&gt;
  int n, k, p, s;&lt;br /&gt;
  fin &amp;gt;&amp;gt; n &amp;gt;&amp;gt; k;&lt;br /&gt;
  p = k;&lt;br /&gt;
  s = 0;&lt;br /&gt;
  while ( n / p ){&lt;br /&gt;
    s += n / p;&lt;br /&gt;
    p *= k;&lt;br /&gt;
  }&lt;br /&gt;
  fout &amp;lt;&amp;lt; s;&lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Numarul de divizori ai unui numar ==&lt;br /&gt;
Fie &amp;lt;math&amp;gt;n = d_1^{p_1} * d_2^{p_2}*\cdots *d_k^{p_k}&amp;lt;/math&amp;gt; este descompunerea în factori primi a lui n. &lt;br /&gt;
&lt;br /&gt;
&amp;lt;math &amp;gt;Nrdiv = (p_{1}+1)*(p_{2}+1)*...*(p_{k}+1) &amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Suma divizorilor unui numar == &lt;br /&gt;
&amp;lt;math&amp;gt;S = \dfrac{d_{1}^{p_{1}+1}-1}{d_{1}-1}*\dfrac{d_{2}^{p_{2}+1}-1}{d_{2}-1}*...*\dfrac{d_{k}^{p_{k}+1}-1}{d_{k}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Aplicati formula in problema: [https://www.pbinfo.ro/?pagina=probleme&amp;amp;id=1574 Prietene]&lt;br /&gt;
Tema:[https://infoarena.ro/problema/sumdiv sumdiv]&lt;br /&gt;
&lt;br /&gt;
== Numarul de numere prime cu n mai mici ca n (Indicatorul lui Euler) ==&lt;br /&gt;
* [https://www.pbinfo.ro/?pagina=probleme&amp;amp;id=1908 Fractii_ired]&lt;br /&gt;
Problema cere de fapt, cate numere din intervalul [1,n] sunt prime cu n. O prima solutie este sa calculam cmmdc dintre n si fiecare numar x din intervalul [1,n]. Daca cmmdc(x, n) este 1, atunci x/n e fractie ireductibila. Aceasta solutie insa este lenta, parcurgerea tuturor valorilor de la 1 la n consuma f. mult timp.&lt;br /&gt;
O alta solutie este data de [https://ro.wikipedia.org/wiki/Indicatorul_lui_Euler Indicatorul lui Euler]&lt;br /&gt;
Indicatorul lui Euler se determina folosind tot descompunerea in factori primi, calculand formula:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\phi(n)= (p_{1}-1)p_{1}^{k_{1}-1} * (p_{2}-1)p_{2}^{k_{2}-1}* \cdots *(p_{r}-1)p_{r}^{k_{r}-1}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Formula se poate reduce astfel incat algoritmul sa poata fi mai usor implementat :&lt;br /&gt;
&lt;br /&gt;
&amp;lt;math&amp;gt;\phi(n)=n * \dfrac{(p_{1}-1)}{p_{1}} * \dfrac{(p_{2}-1)}{p_{2}}* \cdots * \dfrac{(p_{r}-1)}{p_{r}}&amp;lt;/math&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Tema ==&lt;br /&gt;
Filtrare probleme cu descompunerea in factori primi: [https://www.pbinfo.ro/?pagina=probleme-lista&amp;amp;disciplina=0&amp;amp;clasa=9&amp;amp;tag=1&amp;amp;subtag=18&amp;amp;dificultate=0&amp;amp;folosesc_consola=-1&amp;amp;eticheta=55,&amp;amp;start=0 Probleme Pbinfo]&lt;br /&gt;
===Teorie ===&lt;br /&gt;
Descompunerea in factori primi:&lt;br /&gt;
* [https://www.pbinfo.ro/?pagina=probleme&amp;amp;id=62 Factorizare] in curs&lt;br /&gt;
* [https://www.pbinfo.ro/probleme/1319/descompunere-factori descompunere-factori] teorie&lt;br /&gt;
&lt;br /&gt;
=== Tema Laborator ===&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Descompunerea in factori primi&amp;#039;&amp;#039;&amp;#039;:&lt;br /&gt;
* [https://www.pbinfo.ro/?pagina=probleme&amp;amp;id=63 Factorizare1]&lt;br /&gt;
* [https://www.pbinfo.ro/probleme/435/factoriprimi Factoriprimi]&lt;br /&gt;
* [https://www.pbinfo.ro/?pagina=probleme&amp;amp;id=268 Divk] &lt;br /&gt;
* [https://www.pbinfo.ro/?pagina=probleme&amp;amp;id=1319 Descompunere_factori]&lt;br /&gt;
* [https://www.pbinfo.ro/probleme/389/divizoripariinterval divizoripariinterval]&lt;br /&gt;
(dificile)&lt;br /&gt;
* [https://www.pbinfo.ro/probleme/664/nrperechi nrperechi] produs cartezian de perechi&lt;br /&gt;
Alte:&lt;br /&gt;
* https://www.varena.ro/problema/exponent&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Codeforces&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
* [https://codeforces.com/contest/797/problem/A  A - k-Factorization] descompunere in factor primi&lt;/div&gt;</summary>
		<author><name>Bella</name></author>
	</entry>
</feed>