%I#18 2021年6月24日02:26:54
%S 0,1,1,1,2,2,2,1,1,4,2,2,2,1,2,4,2,4,1,4,4,3,2,1,2,2,2,2,6,6,2,7,2,3,2,2,
%温度1,3,6,6,5,4,6,4,2,3,2,2,1,3,8,4,10,4,6,3,9,2,4,2,2,2,1,4,5,10,6,
%U 6,8,4,4,9,4,2
%N a(N)是N个正方形块可以形成两个矩形的方式数,以便这些矩形正交地适合可以包含N个这样的块的最小边界方形,而不会重叠。
%C注意,不接受大小为0的矩形(即瓷砖可能不会形成单个矩形)。
%C求a(n)相当于计算n=xy+zw的正整数解(x,y,z,w),如下所示:
%C i)x,y,z,w<=天花板(sqrt(n))
%C ii)最小值(x,y)+最小值(w,z)<=上限(平方英尺(n))
%C iii)x>=y,z,w
%C iv)z>=w
%C v)如果x=z,则y>=w
%C注意,天花板(sqrt(n))是最小边界正方形的边长,n个单位正方形瓷砖可以正交放置,没有重叠。
%因此,i)规定两个矩形都不应长于边界正方形,而ii)规定两个矩形必须在该正方形内并排。
%C iii)-v)通过排列变量值,确保矩形不重复计数。
%H Thomas Oléron Evans,n表,n=1..9999的a(n)</a>
%e a(18)=4。
%e 18个单位的正方形瓷砖与边长为5(最小值)的正方形正交,没有重叠。有四对可能的矩形,可以用18块瓷砖形成,然后可以正交地放入这样的正方形中,而不会重叠:
%e 1)4 X 3和3 X 2
%e 2)4 X 4和2 X 1
%e 3)5 X 2和4 X 2
%e 4)5 X 3和3 X 1
%e案例1案例2案例3案例4
%e 1 1 1 1--1 1 1 1-1 1 1 1 11--
%e 1 1 1 1--1 1 1 1-1 1 1 1 11 1-2
%e 1 1 1 2 2 1 1 1 1 2-2 2 2 2 1 1-2
%e 1 1 1 2 2 1 1 1 1 2-2 2 2 2 1 1-2
%e----2 2----1 1 1--
%e注意,其他总面积为18的矩形对,例如,3 X 3和3 X 3,或6 X 2和3 X 2,不计算在内,因为它们不能组合成最小(5 X 5)边界方块。
%o(Python)
%o将numpy导入为np
%o#这将设置字数:
%o单位=20
%o#此列表将包含完整的序列:
%o序列条目=[]
%o#i是要计算的项的索引:
%i在范围(1,nits+1)内为o:
%o#此变量统计矩形对:
%o计数=0
%o#计算最小边界方形的边长:
%o bd_sq_side=np.ceil(np.sqrt(i))
%o#查找大小为a x b和c x d的成对矩形(所有整数)
%o#这样,两者都可以正交地放入最小边界方形(整数边长)
%o#WLOG假设:
%o#a是a、b、c、d中最伟大的。。。
%o#c>=d
%o#如果a=c,那么b>=d
%o#不接受大小为0 X 0的矩形
%o#任一矩形的最长边长:
%o对于np.arange(1,bd_sq_side+1)中的a:
%o#同一矩形的另一侧长度:
%对于np.arange中的b,o(1,1+min(a,np.floor(i/a)):
%o#找到另一个矩形的剩余区域:
%o区域1=a*b
%o rem_area=i-区域1
%o#如果没有剩余区域,则第一个矩形无效:
%o如果rem_area==0:
%o继续
%o#第二个矩形的较短边:
%o对于np.arange中的d(1,1+分钟(a,np.楼层(np.sqrt(rem_area))):
%o#第二个矩形的长边:
%o c=面积/日
%o#检查解决方案是否有效:
%o如果b+d<=bd_sq_side和c==int(c)和c<=b1_sq_sied和c<=a和((a!=c)或(b>=d)):
%o计数+=1
%o#将计算的条目添加到列表中
%o seq_entries.append(计数)
%o对于in-seq_entries:
%o打印(a)
%Y参考A338671,A055507(其中a(n)是用1<=a,b,c,d<=n将n+1表示为a*b+c*d的有序方式数)。
%K nonn公司
%O 1,5型
%A Thomas Oléron Evans,2021年4月22日
|