C++ | Leetcode C++题解之第446题等差数列划分II-子序列

题目:

题解:

cpp 复制代码
class Solution {
public:
    int numberOfArithmeticSlices(vector<int> &nums) {
        int ans = 0;
        int n = nums.size();
        vector<unordered_map<long long, int>> f(n);
        for (int i = 0; i < n; ++i) {
            for (int j = 0; j < i; ++j) {
                long long d = 1LL * nums[i] - nums[j];
                auto it = f[j].find(d);
                int cnt = it == f[j].end() ? 0 : it->second;
                ans += cnt;
                f[i][d] += cnt + 1;
            }
        }
        return ans;
    }
};
相关推荐
学学学无无止境13 小时前
组合两个表-力扣
leetcode
千里马-horse14 小时前
Async++ 源码分析7--parallel_reduce.h
开发语言·c++·async++·parallel_reduce
江公望14 小时前
Qt QThread使用方法入门浅解
c++·qt
叫我龙翔14 小时前
【MySQL】从零开始了解数据库开发 --- 数据表的约束
android·c++·mysql·数据库开发
Yupureki14 小时前
从零开始的C++学习生活 6:string的入门使用
c语言·c++·学习·visual studio
Madison-No714 小时前
【C++】探秘string的底层实现
开发语言·c++
天选之女wow15 小时前
【代码随想录算法训练营——Day32】动态规划——509.斐波那契数、70.爬楼梯、746.使用最小花费爬楼梯
算法·leetcode·动态规划
红衣小蛇妖15 小时前
LeetCode-704-二分查找
java·算法·leetcode·职场和发展
无限进步_15 小时前
C语言字符串与内存操作函数完全指南
c语言·c++·算法
闻缺陷则喜何志丹15 小时前
【C++贪心】P10537 [APIO2024] 九月|普及+
c++·算法·贪心·洛谷