• python 练习 1


    from math import sqrt
    from datetime import date
    def k1():
        
        #某人是1999年9月29日生日
        #问到2006年9月29日他活了多少天
        a=date(1999,9,29)
        b=date(2006,9,29)
        c=str(b-a).split(" ")
        print int(c[0])
        return int(c[0])
    
    def k2():
        #四位数前两位相同,后两位也相同,并且是个自然数的平方,问他 是多少
        t=range(1,10)
        for i in t :
            for j in t:
               m=i*1100+j*11
               n=int(sqrt(m))
               if m==n*n and i!=j :
                   print m
    def k3():
        #银行月息0.63%,一 人打算今后五年每年年底取1000,正好取完,问第一年应该存多少
        tl=0
        for i in range(5):
            tl=(tl+1000.0)/(1+0.0063*12)
        print tl
    def k4():
        '''整存整取存钱的利率1,2,3,5,8年的利率分别是
        0.63%,0.66%,0.69%,0.75%,0.84%存20年钱问怎样存    利最大'''
        l1=[8,5,3,2,1]
        l2=[0.0084,0.0075,0.0069,0.0066,0.0063]
        nn=20
        maxx=0
        l3=map(lambda x,y:  1+12*x*y, l1,l2)
        for i in range(nn/l1[0]+1):
            for j in range(nn/l1[1]+1):
                for a in range(nn/l1[2]+1):
                    for b in range(nn/l1[3]+1):
                        t=nn-i*l1[0]-j*l1[1]-a*l1[2]-b*l1[3]
                        if t>=0 :
                            kk=[i,j,a,b,t]
                            kt=reduce(lambda x, y: x*y, map(lambda x,y:  x**y,l3,kk))
                            if kt>maxx :
                                maxx=kt
                                kkk=kk 
        print kkk,2000*maxx
    def k5():
        '''五人捕鱼,a先将鱼分为5份,把多余的一条扔了,拿走自己
    的一份,bcde同样这样拿,问鱼最少多少条 '''
        n=1
        nn=5
        flag=0
        while flag==0 :
            n+=5
            s=n
            for i in range(5):
                s,y=divmod(s-1,5)
                if y==0:
                    s*=4
                    flag=1
                else :
                    flag=0
                    break
        print n
    def k6():
        '''卖鱼,第一次卖了1/2加1/2条
                第2次卖了1/3加1/3条
                第3次卖了1/4加1/4条
                第4次卖了1/5加1/5条
                余下11条
                问一开始是多少条'''
        n=23
        nn=5
        flag=0
        while flag==0 :
            n+=2
            ss=n
            for i in range(1,5):
                s,y=divmod(ss+1,(i+1))
                if y==0:
                    ss-=s
                    flag=1
                else :
                    flag=0
                    break
        print n
    def k7():
        #21筐鱼,7筐满,7筐半,7筐空,在不倒出鱼的情况下,怎样平分为3份
        k=[]
        for i in range(1,4):
            k+=[[i,7-i*2,i]]
        #print k
        for i in k:
            for j in k:
                for m in k:
                    l3=map(lambda x,y,z:x+y+z, i,j,m)
                    if i<=j<=m and l3[0]==7 and l3[1]==7:
                        print [i,j,m]
                        
    if __name__ == '__main__':
        s=""
        for i in range(11,18):
            s+='z'+str(i)+'()
    '
        exec(s)
  • 相关阅读:
    投入产出分析软件研发成功
    GIS 的未来
    无比期待arcgis10
    北京市服务业空间结构研究框架
    经济普查资料开发应用的基本方法及常用的统计分析方法
    关于公共设施或公共空间的服务区分析
    打造国家级GIS 平台——来自Jack Dangermond
    MySQL的字符串函数大全
    loadrunner 将执行脚本 写到vuser_init函数中问题
    mysql 批量update操作错误解决
  • 原文地址:https://www.cnblogs.com/kuihua/p/5521952.html
Copyright © 2020-2023  润新知