质因数:质因数(素因数或质因子)在数论里是指能整除给定正整数的质数。
质数:质数定义为在大于1的自然数中,除了1和它本身以外不再有其他因数。
目前我的代码测试出来和样例不同,但我觉得我是对的,或者说我还没发现我的错误以及我没有理解对题目的意思吧……
先记录一下
import java.util.Scanner;
public class candy {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
int p=0;
int sum=0;
while(n>=4)
{for(int i=(int) Math.sqrt(n);i>=1;i--)
{
if(n%i==0&&iszhishu(i))
{
p=i;
n=n-p;
sum=sum+p;
break;
}
}
}
System.out.println(sum);
// System.out.println(iszhishu(n));
}
//判断一个数是不是质数
private static boolean iszhishu(int i) {
// TODO Auto-generated method stub
if(i==1)
return false;
else
{for(int j=2;j<i;j++)
{
if(i%j==0)
return false;
}
return true;
}
}
}