解题思路:先将小的数字相乘消除,最后让大数相乘,得到的能量最大
注意事项:
参考代码:
a=int(input())
b=list(map(int,input().split()))
c=[[0]*2 for i in range(a)] #创建一个用来存每个数字头和尾的二维数组
d=0 #用来存总能量
for i in range(a):
if(i==a-1):
c[i]=b[i],b[0]
else:
c[i]=b[i],b[i+1] #把头尾存进去
def small(c):
return c.index(min(c)) #每次返回最小数的下标
for i in range(a-1):
j=small(c)-1
d=c[j][1]*c[j][0]*c[j+1][1] #两球相乘的过程
c[j+1]=c[j][0],c[j+1][1]
del c[j] #删除其中一个球
print(c[0]
0.0分
1 人评分
C语言程序设计教程(第三版)课后习题10.2 (C语言代码)浏览:1055 |
C二级辅导-计负均正 (C语言代码)浏览:652 |
C语言程序设计教程(第三版)课后习题8.9 (C语言代码)浏览:690 |
C语言训练-计算1977!* (C++代码)浏览:907 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:949 |
C语言程序设计教程(第三版)课后习题5.6 (C语言代码)浏览:913 |
有关字符,字符串的输入输出函数说明浏览:498 |
字符串输入输出函数 (C语言代码)浏览:2604 |
链表数据求和操作 (C语言代码)浏览:1035 |
C语言程序设计教程(第三版)课后习题9.6 (C语言代码)浏览:611 |