两个整数做怎样的算法可以得到唯一的整数结果?有这样的算法吗?

因为在数学概念上,“整数对”和“有序整数对”都是“可枚举的”,也就是说这两个集合和整数集合同大小.

这里简单描述一下正整数对 与 正整数 的对应算法.

具体方法上,可以假设先将所有的正整数对 按照两个数之和的大小由小到大排序,两个数之和大小相等的情况按前一个数的大小由小到大排序,也就是

这样,和为N的正整数对,恰好有N-1组.

因此可以推导出从正整数对(A,B) 得到唯一对应正整数(N)的算法:S = A+BN = Sum(1 .. S-2) + A = (S-2)*(S-1)/2 + A

从正整数N推导出对应的正整数对(A,B)的方法稍微复杂,主要难在找到一个正确的S,一般用二分查找的方式,或者用开平方找到一个靠近的S,再加以有限次调整的方式获得一个正确的S,从而计算得A和B.

对于所有整数与所有整数对的编制上,符号和0的处理会让问题稍显复杂.可以用绝对值排序的方法,构造一个类似的结果出来.