首页 > [CQOI2012]编号
头像 Dear㉿You
发表于 2020-09-01 15:41:15
前言 一开始想枚举,发现如果要枚举出来,是 16的7次方,还要比较每个位上的数,会超时,于是得换种方法 分析 题目中说至少三个不同,也就是说不能出现五个相同的,那就可以用数组记录一下每一个合法编号的能构成的五位数,因为要从7位中选出5位,组合数是C(7,5)=21中情况。 代码 #i 展开全文
头像 程序蒟蒻
发表于 2020-09-03 20:37:38
暴力的从小到大枚举所有编号,如果当前编号和之前的有至少五位都一样那么说明这个编号是无效的跳过即可。现在问题变成了怎么判断之前存在和当前这个编号有至少五位数一样的编号——我们可以先枚举是哪五位然后再比这五位数的值,定义一个数组vis k b d表示k对应的这五位数的情况,五个数依次分别是abcde有没 展开全文
头像 bai_qi
发表于 2020-09-03 17:06:11
题目描述你需要给一批商品编号,其中每个编号都是一个7位16进制数(由0~9, a-f组成)。为了防止在人工处理时不小心把编号弄错,要求任意两个编号至少有三个位置对应的数字不相同。第一个编号为0000000,第二个编号为不违反上述规定的前提下最小的编号,…,每次分配一个新编号时,总是选择不和前面编号冲 展开全文