【智商检测——DP】

题目

代码

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
const int N = 1e5+10, M = 110;
int f[N][M];
int main()
{
  int n, k;
  cin >> n >> k;
  for(int i = 1; i <= n; i++)
  {
    int x;
    cin >> x;
    f[i][0] = __gcd(f[i-1][0], x);
    for(int j = 1; j <= min(i, k); j++)
    {
      if(i - 1 >= j) f[i][j] = __gcd(f[i-1][j], x);
      f[i][j] = max(f[i][j], f[i-1][j-1]);
    }
  }

  cout << f[n][k];
}
相关推荐
im_AMBER7 分钟前
Leetcode 38
笔记·学习·算法·leetcode
Miraitowa_cheems37 分钟前
LeetCode算法日记 - Day 82: 环形子数组的最大和
java·数据结构·算法·leetcode·决策树·线性回归·深度优先
Code_Shark1 小时前
AtCoder Beginner Contest 426 题解
数据结构·c++·算法·数学建模·青少年编程
仰泳的熊猫1 小时前
LeetCode:698. 划分为k个相等的子集
数据结构·c++·算法·leetcode
豐儀麟阁贵1 小时前
4.5数组排序算法
java·开发语言·数据结构·算法·排序算法
Shinom1ya_2 小时前
算法 day 32
算法
WBluuue3 小时前
数据结构与算法:摩尔投票算法
c++·算法·leetcode
文火冰糖的硅基工坊4 小时前
[人工智能-大模型-66]:模型层技术 - 两种编程范式:数学函数式编程与逻辑推理式编程,构建起截然不同的智能系统。
人工智能·神经网络·算法·1024程序员节
im_AMBER4 小时前
Leetcode 34
算法·leetcode
im_AMBER4 小时前
Leetcode 31
学习·算法·leetcode