我有一个任意整数类型的typedef,例如
typedef unsigned long long myint;
Run Code Online (Sandbox Code Playgroud)
换句话说,我不知道它是如何定义的,但我可以保证它是一种基本类型.
我也有这种类型的变量实例
myint n;
Run Code Online (Sandbox Code Playgroud)
如何分配n可能是由支持的任何值的随机值myint?
简单地缩放rand()覆盖范围的结果myint将不合适,因为myint可能会比int类型更大,因此将存在无法访问的数字.
像下面这样的东西可以工作,但似乎相当不优雅和低效:找到in myint和in中的位数int,然后连接一堆rand()数字直到myint填充.
我有一小组正整数(大约10个数字),每个都是2的幂.
如何尽快将每个号码映射到其他号码?
这里有两个可行的解决方案但是,考虑到问题的简单性(以及我有多少键),它们看起来都是不必要的迟缓(我错了吗?):
std::map完全避免映射问题,例如,用一个携带对的结构替换我的整数可能是最快的解决方案,但它会使我的大部分代码复杂化,所以我不愿意这样做.