zoukankan      html  css  js  c++  java
  • 最后之作-Last Order(bushi

    最近化学学有机选修,讲羧酸的时候我想到一个问题:不考虑空间异构、能否稳定存在等问题,某高级饱和脂肪酸有多少种同分异构体?做为一名退役的OIer,我将它抽象为了另一个问题:含(n)(C)的饱和链烃基有多少同分异构体?在我废寝忘食(不写作业)研究了(n(ngeq 20))天,经历了无数失败后,我终于写出了下面的代码。目前计算前(1000)个结果的时间小于(1s)(应该没有人丧心病狂到想知道一千烷基的同分异构体数量吧……),具体原理抽空放上来qwq
    qwq.png

    f = []
    g = []
    f.append(1)
    g.append(1)
    print("Input limitition:")
    len = int(input())
    print("Initiating...")
    for i in range(1, len):
        if ((i - 1) % 3 == 0):
            f.append(2 * f[(i - 1) // 3])
        else:
            f.append(0)
        for j in range(0, i, 2):
            f[i] = f[i] + 3 * f[j // 2] * f[i - 1 - j]
        for j in range(0, i):
            f[i] = f[i] + g[j] * f[i - 1 - j]
        f[i] = f[i] // 6
        g.append(0)
        for j in range(0, i + 1):
            g[i] = g[i] + f[j] * f[i - j]
    print("Initiated")
    while 1:#什么?你想退出?你都会用Python了你不会退出?
        print("输入碳原子个数:")
        n = int(input())
        print(f[n])        
    
  • 相关阅读:
    LOJ
    LOJ
    LOJ
    一种树形背包的时间复杂度证明
    [机器学习]第四、五周记录
    [机器学习]第三周记录
    [家里训练20_02_16]C
    [机器学习]第二周记录
    wireshark无响应的问题
    [机器学习]第一周记录
  • 原文地址:https://www.cnblogs.com/happyLittleRabbit/p/12513096.html
Copyright © 2011-2022 走看看