前言 一开始想枚举,发现如果要枚举出来,是 16的7次方,还要比较每个位上的数,会超时,于是得换种方法 分析 题目中说至少三个不同,也就是说不能出现五个相同的,那就可以用数组记录一下每一个合法编号的能构成的五位数,因为要从7位中选出5位,组合数是C(7,5)=21中情况。 代码 #include<bits/stdc++.h> using namespace std; const int N=17; char ch[20]={'0','1','2','3','4','5','6','7','8','9','a','b','c','d','e','f'}; int k; bo...