鱼C论坛

 找回密码
 立即注册
楼主: 冬雪雪冬

[技术交流] Python:每日一题 146

[复制链接]
发表于 2018-2-3 10:42:13 | 显示全部楼层
  1. import itertools
  2. from functools import reduce
  3. it = itertools.count(1,2)
  4. L = [next(it) for i in range(6)]
  5. while True:
  6.     if reduce(lambda x,y: x*y, L) == 135135:
  7.         print(L)
  8.         print('the minimum number is %d' % min(L))
  9.         break
  10.     L.append(next(it))
  11.     L.pop(0)
复制代码

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
冬雪雪冬 + 3 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-3 10:55:28 | 显示全部楼层
  1. odd = [1,3,5,7,9,11,13,15,17,19,21]
  2. start = 0
  3. end = 6
  4. result = 1
  5. while True:
  6.     new_odd = odd[start:end]
  7.     start += 1
  8.     end += 1
  9.     for per_odd in new_odd:
  10.         result *= per_odd
  11.     if result == 135135:
  12.         print(new_odd)
  13.         print("以上连续6个奇数乘积 = " + str(result))
  14.         print("最小奇数为:" + str(min(new_odd)))
  15.         break
  16.     else:
  17.         result = 1
  18.         continue
复制代码

点评

第一行有个中午逗号  发表于 2018-2-5 21:05

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
冬雪雪冬 + 3 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-3 11:24:30 | 显示全部楼层
import math as m

a=135135
a=a**(1/6)
a=m.ceil(a)
if a%2==0:
    a=a+1
while (a-2)*(a-4)*(a-6)*a*(a+2)*(a+4)<=135135:
    if (a-2)*(a-4)*(a-6)*a*(a+2)*(a+4)==135135:
        print(a-6)
        break

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
冬雪雪冬 + 3 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-3 14:40:11 | 显示全部楼层
  1. i = 1
  2. while i > 0 :
  3.       if i * (i + 2) * (i + 4) * (i + 6) * (i + 8) * (i + 10) == 135135 :
  4.             print(i)
  5.             break
  6.       else :
  7.             i += 2
复制代码

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
冬雪雪冬 + 3 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-3 15:07:55 | 显示全部楼层
  1. x = 1
  2. while x:
  3.     sum = 1
  4.     for i in range(x,x+6):
  5.         num = 2*i - 1
  6.         sum = sum * num
  7.     if sum == 135135:
  8.         print(2*x-1)   
  9.         break
  10.     else:
  11.         # sum = 1
  12.         x = x + 1
复制代码

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
冬雪雪冬 + 3 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-3 18:33:58 | 显示全部楼层
本帖最后由 dinyz 于 2018-2-3 18:37 编辑

3
程序:

k = 1
a = 1
while(a):
    mu=1
    for i in range(k,k+12,2):
        mu=mu*i
    if mu == 135135:
        break
    k += 2
print(k)

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
冬雪雪冬 + 3 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-3 23:11:34 | 显示全部楼层
  1. n = 1
  2. product = 1

  3. while product != 135135:
  4.     product = n * (n + 2) * (n + 4) * (n + 6) * (n + 8) * (n + 10)
  5.     n += 2

  6. print(n - 2)
复制代码

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
冬雪雪冬 + 3 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-4 00:17:45 | 显示全部楼层
学习
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-2-4 00:18:16 | 显示全部楼层
回复
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-2-4 00:19:04 | 显示全部楼层
最佳答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-4 09:12:33 | 显示全部楼层
怎么看其他鱼友的解答啊?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-4 15:48:01 | 显示全部楼层
  1. def math(num=135135):

  2.     for i in range(1,num):
  3.         if i % 2 == 0:
  4.             continue
  5.         all_i = i
  6.         for i2 in range(1,7):
  7.             all_i = all_i * (i+2*i2)
  8.         if all_i == num:
  9.             return i
复制代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-4 17:50:56 | 显示全部楼层
我不会想知道答案
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-4 19:57:06 | 显示全部楼层

  1. for j in range(1,10,2):
  2.     i = j * (j+2) *(j+4) *(j+6) *(j+8) *(j+10)
  3.     if i == 135135:
  4.         print(j)
  5.         break
复制代码

怎么看其他人的?

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
冬雪雪冬 + 3 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-4 20:50:38 | 显示全部楼层
for i in range(1,10,2):
        t=1
        for i in range(i,i+12,2):
                t=t*i
        if(t==135135):
                print(i-12)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-4 22:38:42 | 显示全部楼层
代码一
  1. def cal(x):
  2.     temp=int(x**(1/6))
  3.     while temp*(temp-2)*(temp-4)*(temp-6)*(temp-8)*(temp-10)!=x:
  4.         temp+=1
  5.     return temp-10
  6. print(cal(135135))
复制代码

代码二
  1. def Cal(n):
  2.     t=int(n**(1/6))
  3.     a=list(filter(lambda x: x*(x+2)*(x+4)*(x+6)*(x+8)*(x+10)==n,range(t-5,t)))
  4.     print(a[0])      
  5. Cal(135135)
复制代码

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
冬雪雪冬 + 3 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-5 10:42:09 | 显示全部楼层
啊,不会写,求教
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-5 11:17:15 | 显示全部楼层
  1. i=1
  2. while True:
  3.         if i*(i+2)*(i+4)*(i+6)*(i+8)*(i+10)==135135:
  4.                 print(i)
  5.                 break
  6.         else:
  7.                 i+=2

  8. #  结果:3
复制代码

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
冬雪雪冬 + 3 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-5 12:51:15 | 显示全部楼层
x=0
while x<135135:
     if x%2==1:
         if x*(x+2)*(x+4)*(x+6)*(x+8)*(x+10)==135135:
               print(x)
               break
     x+=1

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
冬雪雪冬 + 3 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-2-5 14:42:50 | 显示全部楼层
num = pow(135135,1/6)
r  = int(num)
result = r
flag = True
while(flag):
    for i in range(1,6):
        result = result*(r+i*2)
    print('result',result)
         
    if(result==135135):
        print('6个连续的奇数乘积为135135中最小的数字为:%d'%(r))
        flag = False
        break
    if(result>135135):
        r=r-2
    if(result<135135):
        r = r+2
    result = r

result 2297295
result 675675
result 135135
6个连续的奇数乘积为135135中最小的数字为:3

评分

参与人数 1荣誉 +3 鱼币 +3 收起 理由
冬雪雪冬 + 3 + 3

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-29 17:00

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表