首页 > 其他分享 >[ARC100E] Or Plus Max

[ARC100E] Or Plus Max

时间:2023-08-31 19:55:19浏览次数:42  
标签:int Max 最大值 大值 second Plus ARC100E first

原题链接

不难发现我们可以处理出每个状态所有子集中 \(a_i\) 的最大值和次大值,用一个 pair<int,int> 维护,跑一遍 \(\text{SOSDP}\),这时每个状态的权值就是最大值加次大值,最终输出的每一个答案都是一个前缀最大值。

点击查看代码
#include <bits/stdc++.h>
#define FL(i, a, b) for(int i = a; i <= b; i++)
#define FR(i, a, b) for(int i = a; i >= b; i--)
using namespace std;
int n, U, ans;
pair<int, int> f[1 << 18];
void upd(pair<int, int> &a, int x){
    if(x > a.first) a.second = a.first, a.first = x;
    else if(x > a.second) a.second = x;
}
int main(){
    scanf("%d", &n), U = (1 << n) - 1;
    FL(s, 0, U) scanf("%d", &f[s].first);
    FL(i, 1, n) FR(s, U, 1) if(s & (1 << i - 1))
        upd(f[s], f[s ^ (1 << i - 1)].first), upd(f[s], f[s ^ (1 << i - 1)].second);
    FL(s, 1, U) ans = max(ans, f[s].first + f[s].second), printf("%d\n", ans);
    return 0;
}

标签:int,Max,最大值,大值,second,Plus,ARC100E,first
From: https://www.cnblogs.com/zac2010/p/17670307.html

相关文章

  • Mybatis Plus报错: can not find lambda cache...
    使用mybatisplus时使用Lambda表达式做查询条件会遇到mybatis拿不到缓存问题:错误1:com.baomidou.mybatisplus.core.exceptions.MybatisPlusException:cannotfindlambdacacheforthisentity错误2:cannotfindlambdacacheforthisproperty[XXX]ofentity[com.XXX.X......
  • MyBatis-Plus通过注解设置主键自增策略
    MySQL数据库使用自增列(AutoIncrementColumn)MySQL支持自增列,这是一种方便的方式来生成主键值。在MyBatis-Plus中,你可以使用@TableId(type=IdType.AUTO)注解来指定自增列作为主键生成策略。首先,确保你的MySQL表中已经设置了自增列。例如:CREATETABLEyour_table_name......
  • mybatis plus 3.4以上分页无效问题,limit一直加不上,MybatisPlusInterceptor无效
    解决方案1、已注册@BeanpublicMybatisPlusInterceptormybatisPlusInterceptor(){MybatisPlusInterceptorinterceptor=newMybatisPlusInterceptor();PaginationInnerInterceptorpaginationInnerInterceptor=newPaginationInnerInterceptor(D......
  • 融云 CallPlus SDK 上线!1V1 音视频、远程服务类应用的实现利器
    近期,融云新一代音视频通话场景化SDKCallPlus将正式上线!关注【融云全球互联网通信云】了解更多融云CallPlus完整封装了拨打、振铃、接听、挂断等整套呼叫流程,支持一对一及群组多人音视频通话。在功能上,融云CallPlus以独立后端保障状态统一性和业务扩展性,上新了视频预览,美颜设......
  • Lnton羚通视频分析算法平台【PyTorch】教程:torch.nn.maxpool2d
    torch.nn.MaxPool2d是PyTorch中的一个二维最大池化层。它用于在神经网络中执行最大池化操作,以减少特征图的空间尺寸并提取出主要特征。torch.nn.MaxPool2d的常用语法如下:torch.nn.MaxPool2d(kernel_size,stride=None,padding=0,dilation=1,return_indices=False,ceil_mode......
  • ruoyi-vue-plus 配置邮箱
    ruoyi-vue-plus配置邮箱......
  • 【CF1519D】Maximum Sum of Products
    #include<bits/stdc++.h>usingnamespacestd;typedeflonglongll;lln,a[5000+10],b[5000+10],abpre[5000+10],absuf[5000+10],ans;intmain(){ cin>>n; for(lli=1;i<=n;i++)cin>>a[i]; for(lli=1;i<=n;i++)cin>>b[i]; for(......
  • Codeforces Round 892 (Div. 2)E. Maximum Monogonosity(动态规划,数学)
    题目链接:https://codeforces.com/contest/1859/problem/E 题意: 有长度为n的a和b俩个序列,定义f【l,r】=abs(a【l】-b【r】)+abs(b【l】-a【r】); 给正整数k,求 不相交的区间且  所有  区间的长度 的 和 为k的最大值 是多少? 分析: 这里借鉴一个佬......
  • 解锁安全高效办公——私有化部署的WorkPlus即时通讯软件
    在当今信息时代,高效的沟通与协作对于企业的成功至关重要。然而,随着信息技术的发展,保护敏感信息和数据安全也变得越来越重要。为了满足企业对于安全沟通和高效办公的需求,我们隆重推出私有化部署的WorkPlus即时通讯软件,为您的企业提供一站式解决方案。私有化部署的优势:1.完全掌控数......
  • 使用editplus批量修改文件编码
     进行J2EE开发时,经常得拿现成的前端文件,如JS、CS、JSP、html等文件。把这些文件导入到webRoot(或webContent)时经常会出现“集体乱码”的情况(如下图所示),这是因为这些文件的编码格式为ansi编码与eclipse(或myeclipse)中工作空间编码的“gbk”("utf-8")不符。使用编辑器对每个文件进......