算法均匀分布物品进入3列

编程入门 行业动态 更新时间:2024-10-06 06:46:05
本文介绍了算法均匀分布物品进入3列的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述

我在寻找一种算法,将均匀地分配1到许多项目分为三列。没有列可以有一个以上的比任何其他列更多的项目。我输入了我要找的下面一个例子。加起来COL1,col2的,和COL3应该等于ItemCount中。

编辑:另外,这些项是字母数字的,必须在塔中排列。在列中的最后一个项目必须小于在下一列中的第一项。

产品COL1,col2的,COL3 A A AB A,B 农行A,B,C ABCD AB,C,D ABCDE AB,CD,E ABCDEF AB,CD,EF ABCDEFG ABC,DE,FG ABCDEFGH ABC,DEF,GH ABCDEFGHI ABC,DEF,GHI ABCDEFHGIJ ABCD,EFG,HIJ ABCDEFHGIJK ABCD,EFGH,IJK

解决方案

在这里你去,在Python:

NUMCOLS = 3 数据=ABCDEFGHIJK 对ItemCount中在范围(1,12):     子数据= DATA [:ItemCount中]     Col1Count =(ItemCount中+ NUMCOLS - 1)/ NUMCOLS     Col2Count =(ItemCount中NUMCOLS + - 2)/ NUMCOLS     Col3Count =(ItemCount中+ NUMCOLS - 3)/ NUMCOLS     COL1 =子数据[:Col1Count]     COL2 =子数据[Col1Count:Col1Count + Col2Count]     COL3 =子数据[Col1Count + Col2Count:]     打印%2D%5S%5S%5S%(ItemCount中,COL1,col2的,COL3) #打印: #1 #2 A B #3 A B C #4 AB C D #5 AB CDË #6 AB CD EF #7 ABC DE FG #8 ABC DEF GH #9 ABC DEF GHI #10 ABCD EFG HIJ #11 ABCD EFGH IJK

I'm looking for an algorithm that will evenly distribute 1 to many items into three columns. No column can have more than one more item than any other column. I typed up an example of what I'm looking for below. Adding up Col1,Col2, and Col3 should equal ItemCount.

Edit: Also, the items are alpha-numeric and must be ordered within the column. The last item in the column has to be less than the first item in the next column.

Items Col1,Col2,Col3 A A AB A,B ABC A,B,C ABCD AB,C,D ABCDE AB,CD,E ABCDEF AB,CD,EF ABCDEFG ABC,DE,FG ABCDEFGH ABC,DEF,GH ABCDEFGHI ABC,DEF,GHI ABCDEFHGIJ ABCD,EFG,HIJ ABCDEFHGIJK ABCD,EFGH,IJK

解决方案

Here you go, in Python:

NumCols = 3 DATA = "ABCDEFGHIJK" for ItemCount in range(1, 12): subdata = DATA[:ItemCount] Col1Count = (ItemCount + NumCols - 1) / NumCols Col2Count = (ItemCount + NumCols - 2) / NumCols Col3Count = (ItemCount + NumCols - 3) / NumCols Col1 = subdata[:Col1Count] Col2 = subdata[Col1Count:Col1Count+Col2Count] Col3 = subdata[Col1Count+Col2Count:] print "%2d %5s %5s %5s" % (ItemCount, Col1, Col2, Col3) # Prints: # 1 A # 2 A B # 3 A B C # 4 AB C D # 5 AB CD E # 6 AB CD EF # 7 ABC DE FG # 8 ABC DEF GH # 9 ABC DEF GHI # 10 ABCD EFG HIJ # 11 ABCD EFGH IJK

更多推荐

算法均匀分布物品进入3列

本文发布于:2023-11-30 18:37:08,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1651091.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:算法   均匀   物品

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!