ამოხსნების სტატუსი

ამ გვერდზე თქვენ იხილავთ გაგზავნილი ამოხსნების სტატუსს.


გაგზავნის თარიღი: 24.11.2021 22:25:32

ამოცანა: მარტივი მამრავლები

მომხმარებელი: efemia

ვერდიქტი: სრული ამოხსნა

შეფასება: 100.0 ქულა







#include <iostream>
#include <math.h>
using namespace std;
bool IsPrime (int n){
if(n==2) return true;
 if(n<2 || n%2==0)
 return false;
 int lim = sqrt(n);
 for (int i=3; i<=lim; i+=2){
     if(n%i==0)
     return false;
 }
 return true;

}
int main()
{
    int n, div=2;
    cin >> n;
    while(n > 1){
        if(!(n%div) && IsPrime(div)){
            cout << div << " ";
            n/=div;
        }
        else
        div++;
    }


    return 0;
}

ტესტები

შემავალი მონაცემები
12
გამომავალი მონაცემები
2 2 3
თქვენი პასუხი
2 2 3 
ჩეკერის პასუხი
YES
შემავალი მონაცემები
17
გამომავალი მონაცემები
17
თქვენი პასუხი
17 
ჩეკერის პასუხი
YES
შემავალი მონაცემები
32
გამომავალი მონაცემები
2 2 2 2 2
თქვენი პასუხი
2 2 2 2 2 
ჩეკერის პასუხი
YES
შემავალი მონაცემები
1248
გამომავალი მონაცემები
2 2 2 2 2 3 13
თქვენი პასუხი
2 2 2 2 2 3 13 
ჩეკერის პასუხი
YES
შემავალი მონაცემები
6597
გამომავალი მონაცემები
3 3 733
თქვენი პასუხი
3 3 733 
ჩეკერის პასუხი
YES
შემავალი მონაცემები
10350
გამომავალი მონაცემები
2 3 3 5 5 23
თქვენი პასუხი
2 3 3 5 5 23 
ჩეკერის პასუხი
YES
შემავალი მონაცემები
28955
გამომავალი მონაცემები
5 5791
თქვენი პასუხი
5 5791 
ჩეკერის პასუხი
YES
შემავალი მონაცემები
327960
გამომავალი მონაცემები
2 2 2 3 3 5 911
თქვენი პასუხი
2 2 2 3 3 5 911 
ჩეკერის პასუხი
YES
შემავალი მონაცემები
678689
გამომავალი მონაცემები
11 11 71 79
თქვენი პასუხი
11 11 71 79 
ჩეკერის პასუხი
YES
შემავალი მონაცემები
984728
გამომავალი მონაცემები
2 2 2 123091
თქვენი პასუხი
2 2 2 123091 
ჩეკერის პასუხი
YES