作者 | 主题 |
---|---|
ligp99 侠圣 经验值: 3998 发帖数: 827 精华帖: 0 |
楼主 2021-12-10 16:00:51
主题:组合 的结果
有你帮助有我成长
|
芳季 至圣 经验值: 66284 发帖数: 14658 精华帖: 100 |
1楼 2021-12-10 16:13:21
主题:回复:32组合 的结果 两层嵌套for。 外层的for abcd。内层for 6选1. |
锋言锋语 至圣 经验值: 23511 发帖数: 3323 精华帖: 51 |
4楼 2021-12-10 16:21:12
主题:回复:32组合 的结果 楼主该不会是想 8个数字取一个X, 4个字母取一个Y, 进行XY的编码吧。 如果这样, 你可以用如下思路编码: 结果输出到MW0. 选择的数字0 -7, 输出到MW2. 选择的字母, 按0 - 3输出到 MW4. MW0= (MW2 << 2) MW4.
不忘初心
|
锋言锋语 至圣 经验值: 23511 发帖数: 3323 精华帖: 51 |
5楼 2021-12-10 16:34:43
主题:回复:组合 的结果 楼主看我上面的回帖。 就是一个 8*4的问题。 So easy. 因为你这两个选项都是2的整幂次。 所以分别用位表示, 然后拼到一起,就是一个能遍历所有的编号。 形如 xxxyy. 五个bit, 用0 - 31来表示。 你需要的1 - 32可以在此结果+1实现。 如果你懂c脚本, 更简单了。 char *p = GetTagProp("x.pdl", "obj1", "Tex"); //获取选择数字内容的字符串。 char *q = GetTagProp("x.pdl", "obj2", "Text"); //获取选择字母内容的字符串。 属性名我记得是Text, //具体再查一下。 int no = (*p - '1') * 4 + (*q - 'A') +1; //Over.
不忘初心
|