能组成多少个无重复数字且不为5的倍数的五位数有多少个?
答案是:21504
第三种解法:
C++代码:
#include <iostream>
using namespace std;
// 判断num是否有重复数字
bool isRight(int num)
{
int arrays[10] = { 0 };
while (num > 0)
{
int temp = num % 10;
if (arrays[temp])
return false;
else
arrays[temp] = 1;
num = num / 10;
}
return true;
}
int main(int argc, const char* argv[]) {
int count = 0;
for (int i = 10000; i <= 99999; i++)
{
if(i % 5 != 0) // 当不为5的倍数时进入
if (isRight(i)) // 如果无重复数字,count++
count++;
}
cout << count << endl;
return 0;
}