20

モデレーター選挙の結果に関する最新の SO ブログ投稿を見て、OpenSTV をダウンロードしました。Jeff は、OpenSTV を使用して選挙を行ったと書いており、投票データを含む投票ファイル (.blt) を一緒に提供しました。

私の質問は、C# で .BLT ファイルを作成するにはどうすればよいですか?

投票ページがそれを行ったと考えることができる2つの方法を次に示します。

  • 投票ページは各投票を SQL データベースに追加し、投票が終了した後、どういうわけか、これらの投票は .BLT ファイルにエクスポートされました。どうやって?これどうやってするの?
  • または、投票ページがファイルを作成し、誰かが投票するたびに追加しました。投票ページは完全にスケーラブルではないため、これがどのように機能したかではないと確信していますが、C# でこれを行うにはどうすればよいでしょうか?

両方の可能性がどのように機能するか、また C# でそれを行う方法を知りたいと思っています。前もって感謝します。ああ、ジェフがこの質問を見てくれることを願っています。彼はおそらく素晴らしい答えを持っているでしょう...

4

1 に答える 1

27

BLT ファイル形式の最良の説明は次のとおりです。

    4 2 # 4 人の候補者が 2 議席を争っている
    -2 # ボブは撤回しました (オプション)
    1 4 1 3 2 0 # 最初の投票
    1 2 4 1 3 0
    1 1 4 2 3 0 # 最初の数字は投票の重みです (>= 1)。
    1 1 2 4 3 0 # 最後の 0 は投票終了マーカーです。
    1 1 4 3 0 # 中の数字は候補に対応
    1 3 2 4 1 0 投票で #。
    1 3 4 1 2 0
    1 3 4 1 2 0 # チャック、ダイアン、エイミー、ボブ
    1 4 3 2 0
    1 2 3 4 1 0 # 最後の投票
    0 # 投票終了マーカー
    「エイミー」 #候補1
    「ボブ」#候補2
    「チャック」 #候補3
    「ダイアン」 #候補 4
    「園芸部総選挙」 #タイトル

私がしたのは

  1. SQL Management Studio でアドホック クエリを実行して投票結果を取得する
  2. 結果をコピーしてテキスト ファイルに貼り付けます (デフォルトではタブ区切りで出力されます)。
  3. クエリから BLT 形式に変換する小さな 50 行の C# アプリを作成しました
于 2010-02-10T03:34:47.097 に答える