首页
比赛
tracker
题库
课程
竞赛讨论区
登录
/
注册
去牛客
首页
>
宵暗的妖怪
8条解析
开通博客写题解
Ldh1315109
发表于 2025-11-11 18:05:12
fmin = lambda x, y: x if x < y else y fmax = lambda x, y: x if x > y else y # @TIME def solve(testcase): n = II() A = LII() dp = [
展开全文
ddb酱
发表于 2025-11-14 17:46:07
void solve() { int n;cin >> n; vi a(n); for (int i = 0;i < n;i++) { cin >> a[i]; } vi dp(n + 1); dp[0]
展开全文
周康禧
发表于 2025-12-11 17:23:18
#include <bits/stdc++.h> using namespace std; using ll = long long int; using ld = long double; using PII=pair<ll,ll>; using PIII=pair<
展开全文
自由的风0450
发表于 2025-11-16 15:41:58
#include <iostream> #include<vector> #include<algorithm> using namespace std; int main() { int n; cin>>n; vector&
展开全文
此在Dasein
发表于 2025-11-17 05:56:57
状态定义 设 dp[i] 为 只考虑第 i 个位置(即 a[1] 到 a[i]) 时,能够得到的最大饱食度。 由于区间长度为 3,若在第 i 个位置结束一个区间,则该区间必覆盖 i‑2、i‑1、i 三个位置,贡献的饱食度为 a[i‑1](区间的中点)。 状态转移 对第 i 个位置有两条决策:
展开全文
大时代1105
发表于 2025-04-04 12:04:38
思路 线性dp 过程 代码 #include <iostream> using namespace std; typedef long long LL; const int N = 1e5 + 10; int n, a[N]; LL f[N]; int main() {
展开全文
Drink0318
发表于 2025-12-22 10:44:32
def main(): import sys input = sys.stdin.read().split() n = int(input[0]) a = list(map(int, input[1:n+1])) # 边界情况:只有3段时,只能选这三
展开全文
SDU_25_数学交叉_新耕孙
发表于 2025-12-18 22:40:31
#include<bits/stdc++.h> using namespace std; typedef long long ll; //状态转移方程为dp[i]=max(dp[i-1],dp[i-3]+a[i-1]); //其中dp[i]表示前i项中最大值 int main(){
展开全文
查看本题
查看本题讨论
相关比赛
8755-北京信息科技大学第十二届程序设计竞赛暨ACM选拔赛(同步赛)
进入比赛
8756-北京信息科技大学第十二届程序设计竞赛暨ACM选拔赛(校内赛)
进入比赛
123509-Cloudflare纪念赛
进入比赛
等你来战
查看全部
牛客周赛 Round 126
报名截止时间:2026-01-11 21:00
牛客小白月赛127
报名截止时间:2026-01-16 21:00
牛客周赛 Round 127
报名截止时间:2026-01-18 21:00
2026牛客寒假算法基础集训营1
报名截止时间:2026-02-03 18:00
2026牛客寒假算法基础集训营2
报名截止时间:2026-02-05 18:00
扫描二维码,关注牛客
意见反馈
下载牛客APP,随时随地刷题