楔形数
楔形数(wedge number)是指可以表示成三个不同质数的积的正整数。如: 30=2×3×5,故30是楔形数。请你写一个函数,判断给定的一个正整数是否是楔形数。若是,函数返回1,否则返回0。
裁判测试程序样例:
#include <stdio.h>
int isWnumber (const int num);
int main(){
int num;
scanf("%d", &num);
if(isWnumber(num))
printf("Yes\n");
else
printf("No\n");
return 0;
}
/* 你提交的答案将被嵌在这里 */ 本帖最后由 jackz007 于 2022-10-31 21:54 编辑
int isWnumber (const int num)
{
int c , i , k ;
for(c = 0 , i = 2 , k = num ; i <= k / i ; i ++) {
if(! (k % i)) {
k /= i ;
if(k % i) {
c ++ ;
if(c > 2) break ;
} else {
c = 0 ;
break ;
}
}
}
return (c == 2) ? 1 : 0 ;
}
页:
[1]