c++ - 苹果事业部 CSES Qustion 解决方案
问题描述
所以这是问题的链接https://cses.fi/problemset/task/1623。这个代码片段是什么意思?:-
for (int i = 0; i < 1 << n; ++i)
{
ll cs = 0;
for (int j = 0; j < n; ++j)
if (i >> j & 1)
cs += p[j];
if (cs <= s / 2)
ans = max(ans, cs);
}
提前致谢。
解决方案
它遍历数组的所有可能组合,并找到最接近总和一半的总和。
推荐阅读
- swift - 如何在 MacOS 中检测当前 NSView 之外的鼠标事件?
- java - 我收到了不良凭证 Spring boot
- database - 如何从 CentOS 7 使用即时客户端连接到 Oracle 云数据库?
- html - 如何响应元素三角形形状?
- python - Python:导入 csv 忽略单个逗号
- amazon-s3 - 将文件从一个 parquet 分区移动到另一个
- python-3.x - 如何在单个条形图中并排绘制多个日期?
- asp.net-core-mvc - Asp.net Core MVC ModelMetadata.AdditionalValues 添加函数
- ios - Themeablebrowser/Themeablebrowser-wkwebview 在运行 ios .ipa 时带来错误
- c++ - 无法传递左值来构造右值