修改目录结构,优化CMakeLists
This commit is contained in:
31
src/263.c
Normal file
31
src/263.c
Normal file
@@ -0,0 +1,31 @@
|
||||
#include <assert.h>
|
||||
#include <stdbool.h>
|
||||
|
||||
/*
|
||||
如果 `n` 为丑数则按数学定义可表示为 `n = 2^a * 3^b * 5^c` 的形式,
|
||||
只需反复除以 2、3、5 即可。当 `a = b = c = 0` 时 `a = 1`。
|
||||
*/
|
||||
bool isUgly(int n)
|
||||
{
|
||||
if (n <= 0)
|
||||
return false;
|
||||
|
||||
int num[] = {2, 3, 5};
|
||||
|
||||
for (int i = 0; i < 3; i++)
|
||||
{
|
||||
while (n % num[i] == 0)
|
||||
n /= num[i];
|
||||
}
|
||||
|
||||
return n == 1;
|
||||
}
|
||||
|
||||
int main()
|
||||
{
|
||||
assert(isUgly(6) == 1);
|
||||
assert(isUgly(1) == 1);
|
||||
assert(isUgly(14) == 0);
|
||||
assert(isUgly(8) == 1);
|
||||
return 0;
|
||||
}
|
||||
Reference in New Issue
Block a user