fork(3) download
  1. #include <iostream>
  2. #include <cstdlib>
  3.  
  4. using namespace std;
  5.  
  6. int silnia(int n)
  7. {
  8. int sil=1;
  9. for(int i=1; i<=n; i++)
  10. {
  11. sil*=i;
  12. }
  13. return sil;
  14. }
  15.  
  16. int iloczyn_pierwszych(int liczba)
  17. {
  18. int k=1;
  19. while(liczba!=1)
  20. {
  21. for(int i=2; i<=liczba; i++)
  22. {
  23. if(liczba%i!=0)
  24. {
  25. continue;
  26. }
  27. else if(liczba==i)
  28. {
  29. k=k*liczba;
  30. }
  31. else
  32. {
  33. break;
  34. }
  35. }
  36. liczba-=1;
  37. }
  38. return k;
  39. }
  40.  
  41. int potega(int liczba, int wykladnik)
  42. {
  43. int wynik=1;
  44. for(int i=1; i<=wykladnik; i++)
  45. {
  46. wynik*=liczba;
  47. }
  48.  
  49. return wynik;
  50. }
  51.  
  52. int main()
  53. {
  54. int n, z, test;
  55. cin>>test;
  56. for(int i=0; i<test; i++){
  57. int j=1;
  58. cin>>n>>z;
  59. while(((silnia(n))%(potega(iloczyn_pierwszych(z),j)))==0)
  60. {
  61. ++j;
  62. }
  63. cout<<j-1;
  64. }
  65. return(0);
  66. }
  67.  
Success #stdin #stdout 0s 4304KB
stdin
1
10 5
stdout
2