我如何生成。BLT文件OpenSTV选举使用C#?
题
我刚刚下载OpenSTV后,看到最近所以博客中,有关结果的主持人的选举。杰夫写道,他用OpenSTV进行选举,并提供一个投票文件(.blt)随着它包含投票的数据。
我的问题是:你怎么创建一个.BLT文件中的C#?
这里有两种方式我可以认为,投票页上有没有它:
- 投票页上添加了各个投票成SQL数据库,然后不知怎的,这些选民被出口到一个.BLT文件之后的投票已经结束。如何呢?我怎么可以这样做?
- 或者,投票页上创建了该文件,然后添加到它每次有人投了反对票。我肯定这不是投票页的工作,因为它是完全无法继续,但我怎么可能这样做C#?
我很有兴趣找出如何,这两种可能性的工作和如何我能做到这一点。在此先感谢。哦,我希望杰夫看到这个问题,因为他可能会有一个很好的答案...
解决方案
最好的解释的BLT文件的格式是在这里:
4 2 # four candidates are competing for two seats -2 # Bob has withdrawn (optional) 1 4 1 3 2 0 # first ballot 1 2 4 1 3 0 1 1 4 2 3 0 # The first number is the ballot weight (>= 1). 1 1 2 4 3 0 # The last 0 is an end of ballot marker. 1 1 4 3 0 # Numbers in between correspond to the candidates 1 3 2 4 1 0 # on the ballot. 1 3 4 1 2 0 1 3 4 1 2 0 # Chuck, Diane, Amy, Bob 1 4 3 2 0 1 2 3 4 1 0 # last ballot 0 # end of ballots marker "Amy" # candidate 1 "Bob" # candidate 2 "Chuck" # candidate 3 "Diane" # candidate 4 "Gardening Club Election" # title
我所做的就是
- 执行特定的查询在SQL管理工作室得到的投票结果
- 复制粘贴的结果纳入文本的文件(出是卡-delimited by default)
- 写了一个小小的50线C#应用程序转换从查询BLT格式
不隶属于 StackOverflow