Tag: 优惠券

优惠券代码生成

我想要生成优惠券代码,例如AYB4ZZ2 。 不过,我也希望能够标记使用过的优惠券,并限制其全球数量,比方说N 天真的做法就像“生成N独特的字母数字代码,把它们放到数据库中,并对每个优惠券操作执行数据库search”。 然而,据我所知,我们也可以尝试find一个函数 MakeCoupon(n) ,它将给定的数字转换成一个具有预定义长度的类似优惠券的string。 据我所知, MakeCoupon应该满足以下要求: 是双面的。 这是反MakeNumber(coupon)应该是有效的可计算的。 MakeCoupon(n)输出应该是字母数字的,并且应该具有小的和恒定的长度 – 以便它可以被称为人类可读的 。 例如SHA1摘要不会通过这个要求。 实用的独特性。 对于每个自然n <= N , MakeCoupon(n)结果应该是完全唯一的或唯一的,例如, MD5是唯一的(具有相同的非常小的碰撞概率)。 (这是一个棘手的定义)如何从一个优惠券代码枚举所有剩余的优惠券不应该是显而易见的 – 比方说MakeCoupon(n)和MakeCoupon(n + 1)应该在视觉上有所不同。 例如MakeCoupon(n),它简单地输出n填充零将失败这个要求,因为000001和000002实际上并没有“视觉上”的差异。 问: 是否存在满足以下要求的函数或函数发生器? 我的search尝试只会把我带到[CPAN] CouponCode,但是它没有满足相应函数的双射要求。