如何使用C#生成OpenSTV选举的.BLT文件?

栏目: ASP.NET · 发布时间: 6年前

内容简介:代码日志版权声明:翻译自:http://stackoverflow.com/questions/2233695/how-do-i-generate-blt-files-for-openstv-elections-using-c

查看最新的SO博客文章后,我刚刚下载了OpenSTV,关于主持人选举的结果.杰夫写道,他使用OpenSTV进行选举,并提供了一个包含投票数据的选票文件(.blt).

我的问题是:你如何在C#中创建一个.BLT文件?

这里有两种方式,我可以想到投票页:

>投票页面将每个投票添加到 SQL 数据库中,然后以某种方式将投票结果输入到.BLT文件中.怎么样我该怎么做?

>或者,投票页面创建该文件,然后每次有人投票时添加该文件.我相信这不是投票页如何工作,因为它是完全不可扩展的,但是我怎么能在C#中做到这一点?

我有兴趣了解两种可能性如何工作,以及如何在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 Management Studio中执行临时查询以获取投票结果

>将粘贴的结果复制到文本文件中(输出是默认为制表符分隔的)

写了一个小的50行C#应用程序,从查询转换成BLT格式

代码日志版权声明:

翻译自:http://stackoverflow.com/questions/2233695/how-do-i-generate-blt-files-for-openstv-elections-using-c


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

微信小程序(开发入门及案例详解)

微信小程序(开发入门及案例详解)

李骏、边思 / 机械工业出版社 / 2017-3-1 / 59.0

本书可分为3部分,第一部分作为基础章节,介绍了第一个小程序的搭建流程,让大家能快速上手;同时对小程序框架原理进行了详细介绍,为后面学习组件、API打下基础。 第二部分对小程序组件、API进行介绍,对组件、API的使用、注意事项进行详细讲解,并给出示例代码。 最后一部分精选5个由浅入深的案例,对小程序研发进行实战讲解,涵盖了实际项目中可能涉及的技术方案和使用方法,具备很强的实战意义。 ......一起来看看 《微信小程序(开发入门及案例详解)》 这本书的介绍吧!

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试