BZOJ4976: [Lydsy1708月赛]宝石镶嵌

https://lydsy.com/JudgeOnline/problem.php?id=4976

分析:

  • 本来是从\(k\le 100\)这里入手,想了想还是不能列出一个和\(k\)有关的式子。
  • 看到\(n\)有点大了,当\(n-k>log\)的时候显然能全取到。
  • 否则\(n\le k+log\)不超过\(117\),暴力即可 。

代码:

#include <cstdio>
#include <cstring>
#include <algorithm>
#include <cmath>
using namespace std;
#define N 131080
int n,K,a[N];
int f[120][N];
int Cnt(int x) {return x?(Cnt(x>>1)+(x&1)):0;
}
inline void upd(int &x,int y) {x=x<y?x:y;}
int main() {scanf("%d%d",&n,&K);int i,o=0,j;for(i=1;i<=n;i++) {scanf("%d",&a[i]);o|=a[i];}int k=Cnt(o);if(n-K>=k) return printf("%d\n",o),0;memset(f,0x3f,sizeof(f));f[0][0]=0;for(i=0;i<n;i++) {for(j=0;j<=131072;j++) {upd(f[i+1][j|a[i+1]],f[i][j]+1);upd(f[i+1][j],f[i][j]);}   }int lim=n-K;for(i=131072;i>=0;i--) {if(f[n][i]<=lim) {printf("%d\n",i); return 0;}}
}

转载于:https://www.cnblogs.com/suika/p/10165844.html

BZOJ4976: [Lydsy1708月赛]宝石镶嵌相关推荐

  1. 4976: [Lydsy1708月赛]宝石镶嵌 dp

    Description 魔法师小Q拥有n个宝石,每个宝石的魔力依次为w_1,w_2,-,w_n.他想把这些宝石镶嵌到自己的法杖上,来提升 法杖的威力.不幸的是,小Q的法杖上宝石镶嵌栏太少了,他必须扔掉 ...

  2. bzoj-4974 [Lydsy1708月赛]字符串大师

    4974: [Lydsy1708月赛]字符串大师 题目链接 Time Limit: 1 Sec Memory Limit: 256 MB Submit: 721 Solved: 347 [Submit ...

  3. bzoj4974: [Lydsy1708月赛]字符串大师

    脑洞题...玄学 假如是a[i]!=i,说明构成了循环节长为a[i]的循环,那就去%一下(别想多)看一下是循环节中的第几个咯. 否则新填的这个不能和前面构成任何循环,那就不停往前跳去把不能填的标记一下 ...

  4. 8.20模拟赛 [POI2009]WIE-Hexer [Lydsy1708月赛]跳伞求生 51nod 1479 小Y的数论题

    T1 发现 p p p很小,在最短路的基础上再加一维表示一个二进制数,代表当前拥有的剑的种类数,直接用SPFA" role="presentation" style=&q ...

  5. 【刷题】BZOJ 4977 [Lydsy1708月赛]跳伞求生

    Description 小Q最近沉迷于<跳伞求生>游戏.他组建了一支由n名玩家(包括他自己)组成的战队,编号依次为1到n.这个游 戏中,每局游戏开始时,所有玩家都会从飞机上跳伞,选择一个目 ...

  6. 退役前的做题记录2.0

    退役前的做题记录2.0 最近在刷省选题......大致上是按照省份刷的. 不过上面的题目顺序是按照写题的顺序排列的,所以可能会有点乱哈. [BZOJ2823][AHOI2012]信号塔 最小圆覆盖,随 ...

  7. 3909: 跳伞求生

    题目描述 小Q最近沉迷于<跳伞求生>游戏.他组建了一支由n名玩家(包括他自己)组成的战队,编号依次为1到n.这个游戏中,每局游戏开始时,所有玩家都会从飞机上跳伞,选择一个目的地降落,跳伞和 ...

  8. 【BZOJ4976】宝石镶嵌 DP

    [BZOJ4976]宝石镶嵌 Description 魔法师小Q拥有n个宝石,每个宝石的魔力依次为w_1,w_2,...,w_n.他想把这些宝石镶嵌到自己的法杖上,来提升法杖的威力.不幸的是,小Q的法 ...

  9. bzoj4976宝石镶嵌 DP

    Description 魔法师小Q拥有n个宝石,每个宝石的魔力依次为w_1,w_2,-,w_n.他想把这些宝石镶嵌到自己的法杖上,来提升 法杖的威力.不幸的是,小Q的法杖上宝石镶嵌栏太少了,他必须扔掉 ...

最新文章

  1. DBA日常工作内容和职责
  2. java lambda 表达式中的双冒号和箭头的用法 ::
  3. 十一届蓝桥杯国赛 玩具蛇-dfs
  4. P2375 [NOI2014] 动物园 kmp fail指针/倍增
  5. 阿里云助力1药网开辟疫情防控“第二战场”
  6. HDU2833 最短路 floyd
  7. win 10计算机查找大文件,教你如何在Win10系统中查找大文件?
  8. 房价――你欠中国老百姓一次彻底的崩盘!
  9. always_comb,always_ff,和always_latch语句
  10. 阿里云服务器购买与配置(4)安装nginx
  11. 【AI绘画】绝美春天插画,人人都是插画师
  12. python语言合法命名-python语言合法命名有哪些
  13. windows onlyoffice教程
  14. 谷粒学院笔记-第二天-数据库设计
  15. AnnotatedElement
  16. MacOS 安装 Android Debug Bridge (ADB)
  17. 2023前端常见面试题大全
  18. 随着苹果手表、各种智能手环、智能眼镜等产品问世
  19. 游歌科技助力润邦重机智能物联抓料机成功交付
  20. Ubuntu18.04+Ros melodic安装cartographer

热门文章

  1. uiautomation函数讲解(上)
  2. CAD转换PDF格式后文字模糊怎么办?
  3. 19年度第1次计算机水平考试,11年第1次计算机水平考试合格成绩
  4. 钱包不鼓就捣蛋,万圣节和极客钱包一起来狂欢
  5. C# 中 MessageBox的使用详解
  6. Android 图片缩放
  7. cssbefore图片大小_::before如何使用?
  8. mysql基础作业_mysql中基础练习
  9. SpringMVC 框架进阶
  10. php二维数组倒序,几行代码搞定PHP二维数组排序