euler函数


看了老半天,调试了几遍还是没理解代码啥意思,咋写出来的,看来时间是最好的解决办法,等我过几天再推推,先记住这十三行代码



int euler(int n)
{
    int ret=n,i;
    for (i=2;i*i<=n;i++) 
		if (n%i==0)
        { 
			ret=ret-ret/i;
            while (n%i==0)
                n/=i; 
		}
        if (n>1)   	ret=ret-ret/n;
        return ret;
}






發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章