分配宿舍委员会解法

来源:互联网 发布:linux rmdir 编辑:程序博客网 时间:2024/05/04 08:48

学校共有1000名学生,235人住在A宿舍,333人住在B宿舍,432人住在C宿舍。学生们要组织一个10人的委员会,试用下列方法分配各宿舍的委员数:

 

(1)     按比例分配取整数的名额后,剩下的名额按惯例分给小数部分较大者。

A235  *0.01  = 2.35

B333  *0.01  = 3.33

C432  *0.01  = 4.32

由以上可知:A宿舍分配3个人,B宿舍分配3个人,C宿舍分配4个人。

 

(2)     课件中的Q值法。

分配第i个名额

A宿舍

B宿舍

C宿舍

QA

名额数

QB

名额数

QC

名额数

4

30080

1

55444.5

1

93312

1+1=2

5

30080

1

55444.5

1+1=2

31104

2

6

30080

1

18481.5

2

31104

2+1=3

7

30080

1+1=2

18481.5

2

15552

3

8

9204.17

2

18481.5

2+1=3

15552

3

9

9204.17

2

9240.75

3

15552

3+1=4

10

9204.17

2

9240.75

3

9331.2

4+1=5

由以上可知:A宿舍分配2个人,B宿舍分配3个人,C宿舍分配5个人。

 

(3) d’Hondt方法:将A,B,C各宿舍的人数用正整数n=1,2,3,…相除,其商数如下表:

 

1            2           3             4           5

A

B

C

235         117.5       78.3          58.75         …

333         166.5       111           83.25         …

432         216         144           108          86.4

将所得商数从大到小取前10个(10为席位数),在数字下标以横线,表中A,B,C行有横线的数分别为2,3,5,这就是3个宿舍分配的席位。

你能解释这种方法的道理吗?

用各宿舍人数同除以123…..而取其商较大的,商较大则说明其被除数越大,则说明该数在总共和里面所占有的比例较大。该方法和比例方法类似,但克服了比例方法中因小数变动而引起的名额不规则变动。,但是在各部门每个席位所代表的人数不相等的情况下,对席位代表的平均人数值较大的一方来说存在着不公平,而且D’Hond~方法不能衡量“不公平” 的大小。

 

如果委员会从10人增加至15人,用以上3种方法再分配名额。

I.按比例分配:

A:  = 3.525;   B: = 4.995;   C:  = 6.48;

A宿舍分配4个名额,B宿舍分配5个名额,C宿舍分配6个名额。

II.按Q值法分配:

分配第i个名额

A

B

C

QA

名额数

QB

名额数

QC

名额数

11

9204.17

2

9240.75

3+1=4

6220.8

5

12

9204.17

2+1=3

5544.45

4

6220.8

5

13

4602.1

3

5544.45

4

6220.8

5+1=6

14

4602.1

3

5544.45

4+1=5

4444.3

6

15

4602.1

3+1=4

3696.3

5

4444.3

6

A宿舍分配4个名额,B宿舍分配5个名额,C宿舍分配6个名额。

 

III.按d’Hondt方法分配:

 

1

2

3

4

5

6

7

 

A宿舍

235

117.5

78.3

58.75

47

39.2

33.57

 

B宿舍

333

166.5

111

83.25

66.6

55.5

47.57

 

C宿舍

432

216

144

108

86.4

72

61.71

 

              A宿舍分配3个名额,B宿舍分配5个名额,C宿舍分配7个名额。

 

3种方法两次分配的结果列表比较。

 

10

15

A

B

C

A

B

C

按照惯例

3

3

4

4

5

6

Q值法

2

3

5

4

5

6

d’Hondt

2

3

5

3

5

7

 

 

(4) 你能提出其它的方法吗?用你自己提出的方法分配上面的名额。

DHondt法和Q值法二者结合起来,确定分配资格以解决“不公平”问题

  具体方法如下:

1)1个名额给人数最多的部门,设为甲部门。

2)根据DHondt法中的P/i值依次确定第23个名额的分配资格部门,直到已有2个部门有分配资格为止,并且有一个部门只有一个名额,设甲乙部门已具备分配资格。

3)下面每增加一个名额,则重复如下步骤,直至丙部门具有分配资格为止。设 >

   a)如果 >  >  ,则丙具备分配资格。

a)如果  >  >  ,则丙仍不具备分配资格;甲、乙运用Q值法,确定这一名额给甲还是给乙。

b)如果   >  >  ,且甲部门的Q值比乙部门的Q值大。这一名额都该给甲。

c)如果  > >  ,且乙部门的Q值比甲部门的Q值大,这一名额给丙。

mn分别为已分给甲、乙的名额数)

4)当丙部门也具备分配资格时,余下名额则按Q值法分配。

 

首先给C宿舍分配一个名额。根据下表:

 

1            2           3             4           5

A

B

C

235         117.5       78.3          58.75         …

333         166.5       111           83.25         …

432         216         144           108          86.4

CB各自再分得一个名额。即此时C2个名额,B1个名额,A没有名额。

PA >  > ,则A分得一个名额,即此时C2个名额,B1个名额,A1个名额。

分配第i个名额

A宿舍

B宿舍

C宿舍

QA

名额数

QB

名额数

QC

名额数

5

27612.5

1

55444.5

1+1=2

31104

2

6

27612.5

1

18481.5

2

31104

2+1=3

7

27612.5

1+1=2

18481.5

2

15552

3

8

9204.1667

2

18481.5

2+1=3

15552

3

9

9204.1667

2

9240.75

3

15552

3+1=4

10

9204.1667

2

9240.75

3

9331.2

4+1=5

A宿舍分配2个名额,B宿舍分配3个名额,C宿舍分配5个名额。

 

 

利用该方法,如果有15人分配名额,在此题中同有10人分配名额过程差别就多了下表:

分配第i个名额

A宿舍

B宿舍

C宿舍

QA

名额数

QB

名额数

QC

名额数

11

9204.1667

2

9240.75

3+1=4

6220.8

5

12

9204.17

2+1=3

5544.45

4

6220.8

5

13

4602.1

3

5544.45

4

6220.8

5+1=6

14

4602.1

3

5544.45

4+1=5

4444.3

6

15

4602.1

3+1=4

3696.3

5

4444.3

6

 

原创粉丝点击