小编N3b*_*zar的帖子

零和游戏16位版本

1.前言

常见的脑力激荡器是使用0..9恰好一次填充下面的空格,以使总和最小化.

  xxx*xx
- xxx*xx
= 
Run Code Online (Sandbox Code Playgroud)

一个解决方案是408 x 37 - 296 x 51 = 0.然而,由于只10! = 3.6*10^6存在数字的排列,所以这个问题很容易被强制解决.我写了一个简单的代码来解决下面发布的这个问题.

2. 16byte问题

类似但更难的问题是使用十六进制数系统执行与上述相同的操作.0...F准确使用数字一次

  xxxx * xxx
- xxxx * xxx
= 
Run Code Online (Sandbox Code Playgroud)

最小化.我这里只发现了两个解决方案.

   FD906 x 5A1
 - 7EC83 x B42
 =  0

   FD906 x 15A
 - 7EC83 x 2B4
 = 0
Run Code Online (Sandbox Code Playgroud)

3.问题

是否存在一种更巧妙的方式来改变排列并找到零解决方案?问题是现在布鲁顿力量的排列太多了.

4.尝试

对于16位数字系统3.5 * 10^14,与仅存在3.6 * 10^6基本10版本相比存在.因此,普通的暴力解决方案需要很长时间.我的第一次尝试是将数字列表分成两组

[14, 13, 10, 9, 6, 5, 2, 1] [15, 12, 11, 8, 7, …
Run Code Online (Sandbox Code Playgroud)

python algorithm optimization mathematical-optimization python-2.7

7
推荐指数
1
解决办法
242
查看次数

单数增加的数量

1.问题简介

我试图找到具有一定数字位数的单调增加数字的数量.带有k数字的单调递增数可以写为

n = a_0 a_1 ... a_k-1

在哪里a_i <= a_(i+1)为所有人i in range(0, k).一个更具体的例子是12312234489.我正在尝试创建一个这样的功能

increasing(2) = 45
increasing(3) = 165
increasing(4) = 495
increasing(5) = 1287
increasing(6) = 3003
Run Code Online (Sandbox Code Playgroud)

因为有45个数字,两个数字正在增加,11, 12, ..., 22, 23, ..., 88, 89, 99.等等.

我认为这是一个使用递归的好机会.我试图编写一个执行此操作的代码,但结果有问题.我的psudo代码是这样的

2. Psudo代码

  • 从数字[1, 2, ..., 9]循环开始这些数字.增加length一个.
  • 循环数字[i, ..., 9],其中last_digit是前一次递归的数字.
  • 如果length = number of digits wanted添加一个totalreturn别人重复上述步骤. …

python recursion python-2.7

5
推荐指数
1
解决办法
2308
查看次数

快速测试n ^ 2 +(n + 1)^ 2是否是完美平方的方法

我正在尝试编写代码来测试是否n^2 + (n+1)^2完美.由于我在编程方面没有太多经验,所以我只能使用Matlab.到目前为止,这是我尝试过的

function [ Liste ] = testSquare(N)

        if exist('NumberTheory')
           load NumberTheory.mat
        else
            MaxT = 0;
        end

        if MaxT > N 
            return
        elseif MaxT > 0 
            L = 1 + MaxT;
        else
            L = 1;
        end


    n = (L:N)';            % Makes a list of numbers from L to N
    m = n.^2 + (n+1).^2;   % Makes a list of numbers on the form A^2+(A+1)^2
    P = dec2hex(m);        % Converts this list to hexadecimal 

    Length = length(dec2hex(P(N,:))); %F …
Run Code Online (Sandbox Code Playgroud)

performance matlab perfect-square

2
推荐指数
1
解决办法
885
查看次数