Leetcode1006笨阶乘

思路:以4为一个分组分别进行处理

python 复制代码
class Solution:
    def clumsy(self, n: int) -> int:
        answer_dict = {0:0,1: 1, 2: 2, 3: 6, 4: 7}
        if n > 4:
            answer = n * (n - 1) // (n - 2) + n - 3
            n -= 4
        else:
            print(answer_dict[n])
            return answer_dict[n]
        print(answer)
        while n >=4:
            current_answer = n * (n - 1) // (n - 2) - n + 3
            answer -= current_answer
            n -= 4
            print(answer,n)
        answer-=answer_dict[n]
        print(answer)
        return answer
相关推荐
PacosonSWJTU1 分钟前
python使用matplotlib画图
开发语言·python·matplotlib
伶俐角少儿编程4 分钟前
2023年12月中国电子学会青少年软件编程(Python)等级考试试卷(六级)答案 + 解析
python·青少年编程·少儿编程·中国电子学会等级考试·中国电子学会
Inverse1627 分钟前
C语言_自定义类型:结构体
c语言·开发语言·算法
tangjunjun-owen15 分钟前
Milvus 2.4 使用详解:从零构建向量数据库并实现搜索功能(Python 实战)
数据库·python·milvus·rag
enyp8016 分钟前
Qt原型模式实现与应用
开发语言·qt·原型模式
CryptoRzz38 分钟前
印度尼西亚数据源对接技术指南
开发语言·python·websocket·金融·区块链
zyx没烦恼42 分钟前
unordered_map和unordered的介绍和使用
开发语言·c++
戌崂石1 小时前
最优化方法Python计算:有约束优化应用——线性可分问题支持向量机
python·机器学习·支持向量机·最优化方法
User_芊芊君子1 小时前
【Java面试题】——this 和 super 的区别
java·开发语言
柴薪之王、睥睨众生1 小时前
(自用)Java学习-5.8(总结,springboot)
java·开发语言·spring boot·学习·mybatis