【无标题】

cpp 复制代码
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
int f[101][25];
int main()
{
	int a[101]={0,534, 386, 319, 692, 169, 338, 521, 713, 640, 692, 969, 362, 311, 349, 308, 357, 515, 140, 591, 216,57, 252, 575, 630, 95, 274, 328, 614, 18, 605, 17, 980, 166, 112, 997, 37, 584, 64, 442, 495,821, 459, 453, 597, 187, 734, 827, 950, 679, 78, 769, 661, 452, 983, 356, 217, 394, 342, 697, 878,475, 250, 468, 33, 966, 742, 436, 343, 255, 944, 588, 734, 540, 508, 779, 881, 153, 928, 764, 703,459, 840, 949, 500, 648, 163, 547, 780, 749, 132, 546, 199, 701, 448, 265, 263, 87, 45, 828, 634};
	
	for(int i=1;i<=100;i++){
		int d=a[i]%24;
		f[i][d]=max(f[i][d],max(f[i-1][0]+a[i],f[i-1][d]));
		for(int x=1;x<24;x++){
			if(f[i-1][x])f[i][(x+d)%24]=max(f[i][(x+d)%24],max(f[i-1][x]+a[i],f[i-1][(x+d)%24]));
			else f[i][(x+d)%24]=f[i-1][(x+d)%24];
		}
	}
	cout<<f[100][0]<<endl;
	return 0;
}

来源:第十六届蓝桥杯模拟赛(第二期)c++答案与代码_小蓝准备请自己的朋友吃饭。小蓝朋友很多,最终吃饭的人总数达 2024 人(包括他自己-CSDN博客

相关推荐
欣欣之王来了1 小时前
AI合规专项:AI算法透明度的合规要求
人工智能·算法
wzdark1 小时前
分块思想在算法优化中的实践与应用4
算法
Because_of_Her11 小时前
dfs-洪水填充技巧
笔记·算法·深度优先·洪水填充
m0_380743871 小时前
Qt侧边栏布局的实现示例
开发语言·c++
小静AI工程实验室1 小时前
RSA 算法详解:从模幂原理到 OAEP 加密、PSS 签名与 Python 实验
python·算法
xzal121 小时前
GESP Python笔记
笔记·python·算法
wzdark2 小时前
算法中的记忆化思想与重复子问题优化4
算法
汉克老师2 小时前
GESP2026年9月认证C++五级( 第三部分编程题(1、哥德巴赫猜想))精讲
c++·gesp·小学生·学c++编程
Discipline10292 小时前
流水线运行是否正随时间变得更加集中?
算法
Logic1012 小时前
C语言/数据结构位运算题解:异或XOR找出书柜中编号只出现一次的那一层——只出现一次的数字
c语言·数据结构·数组·位运算·时间复杂度·算法题·异或性质