jzoj5935小凯学数学

Description

由于小凯上次在找零问题上的疑惑,给大家在考场上带来了很大的麻烦,他决心好好学习数学
        本次他挑选了位运算专题进行研究 他发明了一种叫做“小凯运算”的运算符:
        a$b =( (a&b) + (a|b) )>>1
        他为了练习,写了n个数在黑板上(记为a[i]) 并对任意相邻两个数进行“小凯运算”,把两数擦去,把结果留下 这样操作n-1次之后就只剩了1个数,求这个数可能是什么?
        将答案从小到大顺序输出

Input

4
1 4 3 2

Output

1 2

Sample Input

4
1 4 3 2

Sample Output

1 2

Data Constraint

​ 30% n<=10 0<=a[i]<=7
70% n<=150 0<=a[i]<=3
100% n<=150 0<=a[i]<=7

题意:

运用题中的这种小凯运算,求出操作结果的可能

题解:

一看是一道较简单的dp题

设 f[i][j][k] 代表 i 到 j 的区间是否可能结果为 k

于是就很显然了

动态转移方程:f[i][j][k] = f [i][l][p] | f[r][j][q]

代码:

#include<cstdio>
#include<cstring>
#define maxx(a,b) a>b?a:b
#define minn(a,b) a<b?a:b
const int mx=150;
int n,ma=0,mi=999999999,x;
bool f[mx+5][mx+5][10];
int main(){freopen("math.in","r",stdin);freopen("math.out","w",stdout);memset(f,0,sizeof(f));scanf("%d",&n);for(int i=1;i<=n;i++){scanf("%d",&x),f[i][i][x]=1;ma=maxx(ma,x),mi=minn(mi,x);}for(int i=2;i<=n;i++)for(int j=1;j<=n-i+1;j++){int l=j,r=i+j-1;for(int k=j;k<=i+j-1;k++)for(int x=mi;x<=ma;x++)for(int y=x;y<=ma;y++)f[l][r][(x+y)>>1]|=(f[l][k][x]&f[k+1][r][y])|(f[k+1][r][x]&f[l][k][y]);}for(int i=mi;i<=ma;i++)if(f[1][n][i])printf("%d ",i);return 0;
}

jzoj5935小凯学数学相关推荐

  1. JZOJ5935. 【NOIP2018模拟10.29】小凯学数学

    Description 由于小凯上次在找零问题上的疑惑,给大家在考场上带来了很大的麻烦,他决心好好学习数学 本次他挑选了位运算专题进行研究 他发明了一种叫做"小凯运算"的运算符: ...

  2. JZOJ-senior-5935. 【NOIP2018模拟10.29】小凯学数学

    Time Limits: 1000 ms Memory Limits: 262144 KB Description 由于小凯上次在找零问题上的疑惑,给大家在考场上带来了很大的麻烦,他决心好好学习数学 ...

  3. 宝宝学数学的第一套书,秒杀题海战术!上小学前应该这样学数学!

    作为一个小学口心算特好.初高中也特别好的学霸.小木一直很关心孩子们的数学问题. 我一直都在探索如何引领孩子走进数学的大门,启发他学数学的兴趣,以及把数学思维应用到生活中,而不仅仅是学会背数.四则运算. ...

  4. NOIP 2017 小凯的疑惑 (数学)

    Description 小凯手中有两种面值的金币,两种面值均为正整数且彼此互素.每种金币小凯都有 无数个.在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付的.现在小 凯想知道在无法准确支付的 ...

  5. 看漫画还是学数学?小孩子才做选择,大人全都要!

    "0 前言 12月了,躲在被窝里读小故事的时节到了.窗上寒气雾蒙蒙,屋里暖气热乎乎,床头小桌上放着热果汁,手里还有漫画书,那真是惬意得不能在再惬意了. 可是每当这个时候,脑子里总会冒出一个声 ...

  6. 学数学,你要如何过题海:游泳?冲浪?划小船?开游艇?

    学数学,不刷题是不行的--从小学到大学,这句话我们听了一万遍. 都说题海战术残酷,但我们不得不承认,刷题学数学这回事,包含了一个最简单也最靠谱的道理,那就是熟能生巧. 对于多数人来说,刷题是学数学绕不 ...

  7. 换个姿势学数学:二次函数与拆弹部队

    由于公式的输入问题,该系列在思否停更,需要关注后续更新的请到简书专栏. UX004 什么叫做二次函数? 想必大家上学的时候都接触过吧,大概的形式就是:y=ax^2+bx+c(a≠0) 为什么这种东西 ...

  8. 学数学或物理学到 high 很刺激,是一种怎样的经历与感受?

    吴育昕 ,Google-Megvii-FAIR炼丹中 田渊栋 等 1346 人赞同 当年学线性代数. 一开始看的都是中规中矩的教材, 从行列式出发, 讲矩阵, 讲线性变换. 然后有一天没忍住, 看了那 ...

  9. 《给年青数学人的信》:为何学数学?

    第一封信:为何学数学? 亲爱的梅格! 或许如你所预期,得知你考虑攻读数学时,我非常高兴.不只是因为数个夏天前,你用数星期反复阅读<时间的皱纹>(A Wrinkle in Time)的时间并 ...

最新文章

  1. BZOJ3572: [Hnoi2014]世界树
  2. SAP 调用外部系统
  3. adobe reader java_使用PDF框设置的表单字段值在Adobe Reader中不可见
  4. 使用Dockerfile定制镜像来部署Tomcat项目
  5. MVC中Model BLL层Model模型互转
  6. 设计模式笔记之六:生产消费者模式
  7. Microsoft JDBC Driver 4.0 for SQL Server
  8. vue 给iframe设置src_使用不带src属性的vuejs在iframe中渲染组件
  9. 微信小程序地图定位当前位置
  10. FBReader导入eclipse 和Androidstudio相关问题
  11. 投资银行理论与实务(四):资产证券化
  12. react中Suspense,EventEmitter的使用
  13. 【PCL】点云库PCL常见错误
  14. 【Spring boot 常见问题】
  15. XMPP增加删除好友
  16. 马悦凌:从初级护士到“民间奇医”[1]
  17. 清华计算机系残疾学生,清华学霸矣晓沅:拖拽着残疾的身体,追求生命的完美...
  18. PLC的加权平均值滤波
  19. 移植quectel的GPS模块
  20. Quectel EC200N-CN 大尺寸物联网首选LTE Cat 1模块[移远通信]

热门文章

  1. OpenCore 版本升级后清除NVRAM
  2. 模型调优(Tuning)(一)
  3. 如何查看Linux版本.
  4. JAVA——从基础学起(一)Java语言基础
  5. matlab Logistic回归模型
  6. python简单代码运用到桌面壁纸_五行Python代码自动换你的电脑桌面壁纸(内附源码和exe)...
  7. Docker安装报错Hardware assisted virtualization and data execution protection must be enabled in the BIOS
  8. 2020年浙江理工大学新生赛 C Cly的三角形
  9. 【欧几里得扩展欧几里得】
  10. c#利用log4记录日志