Destroy A Number to 0

Destroy A Number to 0

Destroy

https://www.naukri.com/code360/contests/weekly-contest-114/11365156/problems/30263?leftPanelTabValue=PROBLEM

Hint video:

Code:

bool checkPrime(int n){

    if(n<=2){
        return true;
    }
    for(int i=2;i<=sqrt(n);i++){
        if(n%i==0){
            return false;
        }
    }

    return true;
}

int destroy(int n){
    // Write your code here.

    if(checkPrime(n)){
        return 1;
    }
    int cnt = 0;

    if(n%2==0){
        return n/2;
    }
    for(int i=3;i<=n;i+=2){
        if(n%i==0){
            n = n-i;
            cnt = 1;
            break;
        }
    }

    cnt+=n/2;
    return cnt;
}