部分数学趣题PYTHON编程求解,可作为孩子的PYTHON编程学习训练用 您所在的位置:网站首页 python打印12321 部分数学趣题PYTHON编程求解,可作为孩子的PYTHON编程学习训练用

部分数学趣题PYTHON编程求解,可作为孩子的PYTHON编程学习训练用

2023-04-05 16:17| 来源: 网络整理| 查看: 265

幻灯片1

第五章 数学趣题

在现实的生活中有许许多多有趣的数学问题。经常有意识地寻找并解决这些问题可以增强我们的逻辑思维能力,进而开发我们的大脑,提高我们的智力水平,同时使生活变得丰富多彩。计算机就是帮助我们解决这些问题的强有力的工具。经常练习通过编写程序解决数学难题,可以减少我们在解题时遇到的繁琐而复杂的计算,把精力集中在解决具体问题的方法上,从而锻炼我们的思考能力,逻辑思维水平,同时提高自身的编程水平和应用计算机解决实际问题的能力。

本章将讲解如何通过程序设计来解决一些有趣的数学问题。通过本章的学习,读者不但可以了解一些有趣的数学问题的求解方法,而且可以通过举一反三扩大知识面,提高应用计算机编程解决实际问题的能力。

幻灯片2

5.1舍罕王的失算

题目要求:

舍罕是古印度的国王,据说他十分好玩,宰相达依尔为讨好国王,发明了现今的国际象棋献给国王。舍罕非常喜欢这项游戏,于是决定嘉奖达依尔,许诺可以满足达依尔提出的任何要求。达依尔指着舍罕王前面的棋盘提出了要求:“陛下,请您按棋盘的格子赏赐我一点麦子吧,第1个小格赏我一粒麦子,第2个小格赏我两粒,第3个小格赏四粒,以后每一小格都比前一个小格赏的麦粒数增加一倍,只要把棋盘上全部64个小格按这样的方法得到的麦粒都赏赐给我,我就心满意足了。”舍罕王听了达依尔这个“小小”的要求,想都没想就满口答应下来。

结果在给达依尔麦子时舍罕惊奇地发现它要给达依尔的麦子比自己想象的要多得多,于是他进行了计算,结果令他大惊失色。问题是:舍罕王的计算结果是多少粒麦子?

t=1

for i in range(2,65):

t=t*2

print(i," ",t)

2 2

3 4

4 8

5 16

6 32

7 64

8 128

9 256

10 512

11 1024

12 2048

13 4096

14 8192

15 16384

16 32768

17 65536

18 131072

19 262144

20 524288

21 1048576

22 2097152

23 4194304

24 8388608

25 16777216

26 33554432

27 67108864

28 134217728

29 268435456

30 536870912

31 1073741824

32 2147483648

33 4294967296

34 8589934592

35 17179869184

36 34359738368

37 68719476736

38 137438953472

39 274877906944

40 549755813888

41 1099511627776

42 2199023255552

43 4398046511104

44 8796093022208

45 17592186044416

46 35184372088832

47 70368744177664

48 140737488355328

49 281474976710656

50 562949953421312

51 1125899906842624

52 2251799813685248

53 4503599627370496

54 9007199254740992

55 18014398509481984

56 36028797018963968

57 72057594037927936

58 144115188075855872

59 288230376151711744

60 576460752303423488

61 1152921504606846976

62 2305843009213693952

63 4611686018427387904

64 9223372036854775808

幻灯片3

5.2 求两个数的最大公约数和最小公倍数

题目要求:

编写一个程序计算两个正整数的最大公约数和最小公倍数。

题目分析:

所谓两个数最大公约数就是指两个数a,b的公共因数中最大的那一个。例如:4和8,两个数的公共因数分别为1、2、4,其中4为4和8的最大公约数。

因此要计算出两个数的最大公约数,最简单的方法就是从两个数中较小的那个开始依次递减,得到的第一个这两个数的公因子数即为这两个数的最大公约数。

def maxfactor(a,b):

if(a>b):

t=a

a=b

b=t

else:

if (a==b):

return a

for i in range(1,a):

if (a % (a-i+1)==0 and b % (a-i+1)==0):

return (a-i+1)

def mintimes(a,b):

if(a>b):

t=a

a=b

b=t

else:

if (a==b):

return a

for i in range(a,a*b):

if (i % a==0 and i % b==0):

return i

c=mintimes(4,8)

d=maxfactor(4,8)

print(d,c)

幻灯片4

5.3歌德巴赫猜想的近似证明

题目要求:

所谓歌德巴赫猜想是说任何一个大于2的偶数都能表示成为两个素数之和。应用计算机工具可以很快地在一定范围内验证歌德巴赫猜想的正确性。请编写一个C程序,验证指定范围内歌德巴赫猜想的正确性,也就是近似证明歌德巴赫猜想(因为不可能用计算机穷举出所有正偶数)。

题目分析:

可以把问题归结为在指定范围内(例如:1~2000内)验证其中每一个偶数是否满足歌德巴赫猜想的论断,即是否能表示为两个素数之和。如果发现一个偶数不能表示为两个素数之和,即不满足歌德巴赫猜想的论断,则意味着举出了反例,从而可以否定歌德巴赫猜想。

import math

def issushu(x):

sqrtx=int(math.sqrt(x))

for j in range(2,sqrtx+1):

if(x % j==0):

return 0

return 1

for i in range(1,1001):

a=2*i

for j in range(1,a):

if(issushu(j)==1 and issushu(a-j)==1):

print(a,j,a-j)

幻灯片5

5.4 三色球问题

题目要求:

由红、黄、绿三种颜色的球,其中红球3个,黄球3个,绿球6个。现将这12个球混放在一个盒子中,从中任意摸出8个球,编程计算摸出球的各种颜色搭配。

题目分析:

这是一道排列组合的问题。从12个球中任意摸出8个球,求颜色搭配的种类。解决这类问题的一种比较简单直观的方法是应用穷举法,在可能的解空间中找出所有的搭配,然后再根据约束条件加以排除,最终筛选出正确的答案。

for i in range(0,4):

for j in range(0,4):

for k in range(0,7):

if(i+j+k==8):

print(i,j,k)

0 2 6

0 3 5

1 1 6

1 2 5

1 3 4

2 0 6

2 1 5

2 2 4

2 3 3

3 0 5

3 1 4

3 2 3

3 3 2

幻灯片6

5.5 百钱买百鸡问题

题目要求:

我国古代数学家张丘建在《算经》一书中曾提出过著名的“百钱买百鸡”问题。该问题叙述如下:鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买百鸡,则翁、母、雏各几何?请编写C程序,解决“百钱买百鸡”问题。

for i in range(0,100):

for j in range(0,100):

for k in range(0,100):

if(i+j+k==100 and 5*i+3*j+k//3==100):

print("mare=",i,"femare=",j,"chicken=",k)

mare= 0 femare= 25 chicken= 75

mare= 3 femare= 20 chicken= 77

mare= 4 femare= 18 chicken= 78

mare= 7 femare= 13 chicken= 80

mare= 8 femare= 11 chicken= 81

mare= 11 femare= 6 chicken= 83

mare= 12 femare= 4 chicken= 84

幻灯片7

5.6 判断回文数字

题目要求:

有这样一类数字,它们顺着看和倒着看是相同的数,例如121,656,2332等,这样的数字叫做回文数字。编写一个程序,判断从键盘接收的数字是否为回文数字。

题目分析:

要想判断一个数是否是回文数字,必须从回文数字的特点入手。因为回文数字顺着看和倒着看是相同的数,所以可以通过这个特点来判断一个数字是否是回文数字。

显然可以通过将一个十进制数“倒置”的办法来判断它是否是回文数字。所谓倒置就是计算该十进制数倒过来后的结果。例如一个数是123,它的倒置结果为321,因为123不等于321,所以123不是回文数字。同理,一个数是121,它的倒置结果也为121,所以121是回文数字。

def huiwen(x):

s=str(x)

n=len(s)

s0=s

for i in range(0,n//2):

if(s[i:i+1]!=s[n-i-1:n-i]):

return False

return True

for i in range(1000,2000):

if(huiwen(i)==True ):

print(i)

1001

1111

1221

1331

1441

1551

1661

1771

1881

1991

幻灯片8

5.7 填数字游戏求解

题目要求:

有这样一个算式:

其中ABCDE代表的数字各不相同。编写一个程序,计算出ABCDE各代表什么数字。

题目分析:

这道题的实质就是求这样一个4位数ABCD和1位数E,要求它们的乘积等于DCBA。同时A、B、C、D、E互不相等。也就是在4位的整数集合[1000,9999]和1位的整数集合[1,9]中找到符合上述算式条件的4位数ABCD和1位数E。因此不难想到应用穷举法可以方便地找到答案。

for A in range(1,10):

for B in range(0,10):

for C in range(0,10):

for D in range(1,10):

for E in range(0,10):

if((E*D)% 10==A):

F=C*E+(E*D)//10

if(F % 10==B):

G=F//10+B*E

if(C==G % 10):

if(D==A*E+G//10):

if(A !=B and B !=C and C!=D and D!=E):

print("A=",A,"B=",B,"C=",C,"D=",D,"E=",E)

A= 2 B= 1 C= 7 D= 8 E= 4

幻灯片9

5.8 新郎和新娘

题目要求:

三对新婚夫妇参加婚礼,三个新郞为A、B、C,三个新娘为X、Y、Z。有人不知道谁和谁结婚,于是询问了六位新人中的三位,但听到的回答是这样的:A说他将和X结婚;X说她的未婚夫是C;C说他将和Z结婚。这人听后知道他们在开玩笑,全是假话。请编程找出谁将和谁结婚。

题目分析:

如果“乱点鸳鸯谱”的话,三个新郎A、B、C和三个新娘X、Y、Z共有6种配对组合方式。这是因为不能出现两个新郎(新娘)和一个新娘(新郎)结婚的状况,所以只可能有3*2*1=6种配对方案。因此只要穷举出这6种配对方案,再应用问题中给出的约束条件就可以筛选出正确的答案来。

simple

幻灯片10

5.9 爱因斯坦的阶梯问题

题目要求:

爱因斯坦曾出过这样一道有趣的数学题:有一个长阶梯,若每步上2阶,最后剩1阶;若每步上3阶,最后剩2阶;若每步上5阶,最后剩4阶;若每步上6阶,最后剩5阶;只有每步上7阶,最后刚好一阶也不剩。请问该阶梯至少有多少阶。编写一个C程序解决该问题。

import math

for i in range(1,100):

n=7*i

if(n % 2==1 and n% 3==2 and n% 5==4 and n% 6==5):

print("i min=",i)

break

i min= 17

幻灯片11

5.10 寻找水仙花数

题目要求:

如果一个3位数等于其各位数字的立方和,则称这个数为水仙花数。例如:407=43+03+73,因此407就是一个水仙花数。编写一个程序,找出全部的水仙花数。

题目分析:

水仙花数是三位数,只要应用穷举法穷举出100~999闭区间中的每一个数字(正整数),然后对每一个正整数进行判断,看它是不是水仙花数,如果是水仙花数,则将该数输出,如果不是水仙花数,则不输出该数。

for i in range(1,10):

for j in range(0,10):

for k in range(0,10):

if(i*i*i+j*j*j+k*k*k==100*i+10*j+k):

print(i,j,k)

1 5 3

3 7 0

3 7 1

4 0 7

幻灯片12

5.11 猴子吃桃问题

题目要求:

有一只猴子第一天摘下若干个桃子,当即吃掉了一半,又多吃了一个;第二天又将剩下的桃子吃掉一半,又多吃一个;按照这样的吃法每天都吃前一天剩下的桃子的一半又一个。到了第十天,就只剩下一个桃子。问题:这只猴子第一天摘了多少个桃子。

t=1

for i in range(1,10):

n=2*(t+1)

print(i,t,n)

t=n

1 1 4

2 4 10

3 10 22

4 22 46

5 46 94

6 94 190

7 190 382

8 382 766

9 766 1534

幻灯片13

5.12 兔子产仔问题

题目要求:

13世纪意大利数学家斐波那契他的《算盘书》中提出这样一个问题:有人想知道一年内一对兔子可繁殖成多少对,便筑了一道围墙把一对新生的兔子关在里面。已知一对两个月大的兔子以后每一个月都可以生一对小兔子,而一对新生的兔子出生两个月后才可以生小兔子(例如:1月份出生,3月份才可产仔)。假如一年内没有发生死亡,则一年内共能繁殖成多少对?

life=[]

lifenew=[]

for i in range(0,12):

life.append(0)

lifenew.append(0)

life[0]=1

print(life)

for i in range(0,11):

for j in range(0,11):

if(j>=2):

lifenew[0]+=life[j]

lifenew[j+1]=life[j]

for j in range(0,12):

life[j]=lifenew[j]

total=0

for j in range(0,12):

total+=life[j]

print(life)

print(i," tatal=",total)

'''[1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

[0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

0 tatal= 1

[0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]

1 tatal= 1

[1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]

2 tatal= 2

[2, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]

3 tatal= 4

[3, 2, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0]

4 tatal= 7

[5, 3, 2, 1, 0, 0, 1, 0, 0, 0, 0, 0]

5 tatal= 12

[9, 5, 3, 2, 1, 0, 0, 1, 0, 0, 0, 0]

6 tatal= 21

[16, 9, 5, 3, 2, 1, 0, 0, 1, 0, 0, 0]

7 tatal= 37

[28, 16, 9, 5, 3, 2, 1, 0, 0, 1, 0, 0]

8 tatal= 65

[49, 28, 16, 9, 5, 3, 2, 1, 0, 0, 1, 0]

9 tatal= 114

[86, 49, 28, 16, 9, 5, 3, 2, 1, 0, 0, 1]

10 tatal= 200

'''

幻灯片14

5.13 分解质因数

题目要求:

根据数论的知识可知任何一个合数都可以写成几个质数相乘的形式,这几个质数都叫做这个合数的质因数。例如24=2*2*2*3。把一个合数写成几个质数相乘的形式表示,叫做分解质因数。对于一个质数,它的质因数可定义为它本身。编写一个程序实现分解质因数。

def split(x):

i=2

while(1):

y=x % i

if (y==0):

print(i)

x=x//i

else:

i=i+1

if(i==x):

break

split(100)

幻灯片15

5.14 常胜将军

题目要求:

现有21根火柴,两人轮流取,每人每次可以取走1至4根,不可多取,也不能不取,谁取最后一楰火柴谁输。请编写一个程序进行人机对弈,要求人先取,计算机后取;计算机一方为“常胜将军”。

幻灯片16

5.15 求π的近似值

题目要求:

编写一个C程序,用来求出π的近似值。

题目分析:

求π的方法很多,这里两种最为常用的求π的方法。

方法1:利用“正多边形逼近”法求π。

“正多边形逼近” 法求π的核心思想是极限的思想。假设一个直径d为1的圆,只要求出该圆的周长C,就可以通过π=C/d的方法求出π的值。所以关键是求出该圆的周长C。这里用“正多边形逼近”的方法求圆的周长。

幻灯片17

5.16 魔幻方阵

题目要求:

有一种方阵被称为“魔幻方阵”。所谓魔幻方阵是指在n*n的矩阵中填写1~n2这n2个数字,使得它的每一行、每一列以及两个对角线之和均相等。例如三阶魔幻方阵如下:

它的每一行、每一列以及两个对角线之和均为15。编写一个程序,打印出一种三阶的魔幻方阵。

幻灯片18

本方法相对复杂,已构建成功任意阶幻方生成程序,且对菱形法进行矩阵化描述

幻方分为奇数阶幻方、双偶阶幻方,单偶阶幻方,第一项最简单,本人已经构造幻独方算法,由幻独方可构造极多种类幻方,双偶阶可通过与四阶幻方相乘得到,单偶阶幻方由斯特雷思方法将奇数阶幻方构造而成。

5.17 移数字游戏

题目要求:

有这样一个包含9个圆圈的数阵,如图5-22所示:

图5-23 数阵的最终状态

图5-22 包含9个圆圈的数阵

幻灯片19

5.18 数字的全排列

题目要求:

输入一个数字序列{a1,a2,…,an},将该序列进行排列,并输出每一种排列方式。

def AllRange(listx, start, end):

if start == end:

for i in listx:

print(i,end = '')

print()

for m in range(start,end+1):

listx[m],listx[start] = listx[start],listx[m]

AllRange(listx, start+1, end)

listx[m],listx[start] = listx[start],listx[m]

list1 = [1,2,3,4]

AllRange(list1,0,3)

'''1234

1243

1324

1342

1432

1423

2134

2143

2314

2341

2431

2413

3214

3241

3124

3142

3412

3421

4231

4213

4321

4312

4132

4123'''

幻灯片20

5.19 完全数

题目要求:

如果一个数恰好等于它的因子之和,那么这个数就被称为完全数。例如6的因子为1,2,3,而6=1+2+3,因此6是一个完全数。求出1000以内的完全数。

题目分析:

本题最为直接的解法就是利用穷举法在1~1000以内判断每个数是否是完全数,如果是完全数就输出之。问题的关键就是如何判断一个数a是否是完全数。它要分为两个步骤完成:

(1)求出a的所有因子a1,a2…an的和sum;

(2)判断a1+a2+…+an的和sum是否等于a,如果sum等于a则a是完全数,否则a不是完全数。

幻灯片21

5.20 亲密数

题目要求:

如果整数A的全部因子(包括1,不包括A本身)之和等于B,并且整数B的全部因子(包括1,不包括B本身)之和等于A,则称整数A和B为亲密数。求解3000以内的全部亲密数。

幻灯片22

5.21 数字翻译器

题目要求:

输入一个正整数N,输出它的英文表达。例如:输入1,输出one;输入12,输出twelve;输入135,输出one hundred thirty five…。编写程序实现之。

题目分析:

解决这道题的关键是弄清阿拉伯数字与英文表达的对应关系。

首先数字1~19中每个数都对应一个英文的单词;

幻灯片23

5.22 递归实现数制转换

题目要求:

应用递归的方法实现一个数制转换器,它可以将输入的二进制数转换为十进制表达。

幻灯片24

5.23 谁在说谎

题目要求:

三个嫌疑犯在法官面前各执一词,甲说:乙在说谎;乙说:丙在说谎;丙说:甲乙两人都在说谎。法官为了难,甲乙丙三人到底谁在说谎,谁说的是真话?

题目分析:

这是一道十分有趣的逻辑推理问题。解决这类逻辑推理问题最简单直观的方法是使用穷举法。甲乙丙三人中任何人所说的话无外乎有两种可能,即真和假。如果用1表示真,用0表示假,甲乙丙三人所说的话的真假情况限定在以下范围内。

幻灯片25

第六章 数学趣题(二)

本章继续上一章的内容,向读者介绍一些有趣的数学问题,同时给出详尽的分析过程和程序源代码。

幻灯片26

6.1 连续整数固定和问题

题目要求:

编写一个程序,找出一个数的全部的连续整数固定和。所谓一个数n的连续整数固定和,就是指存在a1,a2,…,an,其中ai+1比ai大1,使得a1+a2+…+an=n。这样a1,a2,…,an称为n的一个连续整数固定和。例如27的全部的连续整数固定和有3组:2+3+…+7=27;8+9+10=27;13+14=27。本题就是要找出任意输入的整数n的全部的连续整数固定和。

幻灯片27

6.2 表示成两个数的平方和

题目要求:

已知一个正整数N,编写一个程序,找出所有满足X2+Y2=N的正整数对X和Y。

import math

def func(x):

n=int(math.sqrt(x))

for i in range(1,n):

for j in range(i,n):

if(i*i+j*j==x):

print(i,j,x)

func(500)

10 20 500

幻灯片28

6.3 具有特殊性质的数

题目要求:

有这样一个4位数abcd,它具有这样的性质abcd=(ab+cd)2,其中ab和cd为两个2位数,求这个4位数abcd。

幻灯片29

6.4 验证角谷猜想

题目要求:

角谷猜想的内容为:任意给定一个自然数,若它为偶数则除以2,若它为奇数则乘3加1,得到一个新的自然数,按照这样的计算方法计算下去,若干次后得到的结果必然为1。编写程序对角谷猜想的正确性加以验证。

幻灯片30

6.5 验证四方定理

题目要求:

四方定理是数论中的重要定理,它可以叙述为:所有自然数至多只要4个数的平方和就可以表示,编写一个程序验证四方定理。

幻灯片31

6.6 递归法寻找最小值

题目要求:

编写一个程序,要求从一个整数序列中找出最小的元素,并用递归的方法实现。

题目分析:

在一个整数序列中找出最小值,最常用的方法是扫描整个序列,记录下最小的元素并返回。但是这里要求用递归的方法实现,因此必须构造这个问题递归解。

幻灯片32

6.7 寻找同构数

题目要求:

正整数n若是它平方数的尾部,则称n为同构数。例如,6是其平方数36的尾部,76是其平方数5776的尾部,因此6与76都是同构数。编写一个程序,找出1000以内的同构数。

题目分析:

本题最直观的解法是使用穷举法,在1~1000的正整数中进行搜索,判断每一个数是否是同构数,如果是则将其输出,如果不是则跳过此数,继续向下寻找,直到判断完这999个数为止。

for i in range(1,1000):

n=i*i

intn=n-i

if(i0):

if(i*3+2*j+k==50):

print("男人,女人,小孩",i,j,k)

男人,女人,小孩 1 18 11

男人,女人,小孩 2 16 12

男人,女人,小孩 3 14 13

男人,女人,小孩 4 12 14

男人,女人,小孩 5 10 15

男人,女人,小孩 6 8 16

男人,女人,小孩 7 6 17

男人,女人,小孩 8 4 18

男人,女人,小孩 9 2 19

幻灯片36

6.11 渔夫捕鱼问题

题目要求:

A、B、C、D、E五渔夫夜间合伙捕鱼,凌晨时都疲倦不堪,各自在河边的树丛中找地方睡着了。待日上三竿,渔夫A第一个醒来,他将鱼分作五份,把多余的一条扔回河中,拿自己的一份回家去了。渔夫B第二个醒来,也将鱼分作五份,扔掉多余的一条,拿走自己的一份,接着C、D、E依次醒来,也都按同样的办法分鱼,问五渔夫至少合伙捕了多少条鱼?试编程序算出。

def yufu(x):

E=5*x+1

D=5*E+1

C=5*D+1

B=5*C+1

A=5*B+1

return A

print(yufu(1))

幻灯片37

6.12 寻找假币

题目要求:

一个国王要赏赐给一个大臣30枚金币,但是其中有一枚是假币。国王提出要求:只能用一个天平作为测量工具,并用尽量少的比较次数找出这枚假币,那么余下的29枚金币就赏赐给这个大臣;否则这个大臣将得不到赏赐。已知假币要比真币的分量略轻一些。聪明的大臣思考片刻,很快用天平找出了这枚假币,于是得到了剩下的29枚金币。你知道这位大臣是如何找到假币的吗?请编写一个程序模拟找假币的过程,注意用尽量少的比较次数找出这枚假币。

平分法,折半查找

幻灯片38

6.13 计算组合数

题目要求:

编写一个程序,计算组合数。

题目分析:

组合数是概率统计中的一个重要概念。组合数的概率意义是从m个事物中任意选取n个事物的选法。例如从标号为1~5的小球中任意选取2个,则其不同选法的种类即为一个组合数,记作。这里要区分排列和组合概念上的不同。Cnm

幻灯片39

6.14 递归法求幂

题目要求:

请编写一个递归算法,计算mn。

题目分析:

一般情况下计算mn时多采用循环连乘的方法,即把m连乘n次。这种方法的效率是很低的。现在介绍一种更为有效的算法来计算整数的幂——递归法。

乘方化为二进制更好

幻灯片40

6.15 汉诺Hanoi塔

题目要求:

一块板上有三根针,A,B,C。A针上套有64个大小不等的圆盘,大的在下,小的在上。如图6-16所示。要把这64个圆盘从A针移动C针上,每次只能移动一个圆盘,移动可以借助B针进行。但在任何时候,任何针上的圆盘都必须保持大盘在下,小盘在上。求移动的步骤。

幻灯片41

6.16 选美比赛

题目要求:

在选美比赛的现场,有一批选手参加比赛,比赛的规则是最后得分越高,名次越低。当比赛结束时,要在现场按照选手的出场顺序(即选手的序号)宣布最后得分和最后名次,获得相同分数的选手具有相同的名次,名次连续编号,不用考虑同名次的选手人数。例如:

选手序号为: 1,2,3,4,5,6,7

选手得分为: 5,3,4,7,3,5,6

则输出名次为: 3,1,2,5,1,3,4

请编程帮助大赛组委会完成比赛的评分和排名工作。

Simple



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有