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

题解

先分析一下题目给出的运算,
a $ b =( (a&b) + (a|b) )>>1
观察二进制位置上面,就是一个交集再加上一个并集,其实就是a+b嘛,
所以呢,这个东西就是(a+b)/2 。
知道了这个性质,出来起来就比较方便了,
设fi,j,kf_{i,j,k}fi,j,k​表示从i到j这一段,是否最终是否可以变为一个数k,
转移就先枚举一个区间[i,j],然后枚举一个分界点,将一个区间分成两个区间,
最后再枚举这两个区间最终是什么数字。

code

#include <cstdio>
#include <iostream>
#include <cstring>
#define N 153
#define P putchar
#define G getchar
using namespace std;
char ch;
void read(int &n)
{n=0;ch=G();while((ch<'0' || ch>'9') && ch!='-')ch=G();int w=1;if(ch=='-')w=-1,ch=G();while('0'<=ch && ch<='9')n=(n<<3)+(n<<1)+ch-'0',ch=G();n*=w;
}int n,x;
bool f[8][N][N];int main()
{freopen("math.in","r",stdin);freopen("math.out","w",stdout);memset(f,0,sizeof(f));read(n);for(int i=1;i<=n;i++)read(x),f[x][i][i]=1;for(int l=2;l<=n;l++)for(int i=1;i+l-1<=n;i++)for(int j=i+1;j<=n;j++)for(int p1=0;p1<8;p1++)for(int p2=0;p2<8;p2++)f[(p1+p2)>>1][i][l+i-1]|=f[p1][i][j-1]&&f[p2][j][i+l-1];for(int i=0;i<8;i++)if(f[i][1][n])P(i+48),P(' ');return 0;
}

JZOJ5935. 【NOIP2018模拟10.29】小凯学数学相关推荐

  1. jzoj5935小凯学数学

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

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

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

  3. JZOJ-senior-5934. 【NOIP2018模拟10.29】列队

    Time Limits: 1000 ms Memory Limits: 262144 KB Description Sylvia是一个热爱学习的女孩子. 在平时的练习中,他总是能考到std以上的成绩, ...

  4. jzoj 5906. 【NOIP2018模拟10.15】传送门(树形dp)

    5906. [NOIP2018模拟10.15]传送门 Description 8102年,Normalgod在GLaDOS的帮助下,研制出了传送枪.但GLaDOS想把传送枪据为己有,于是把Normal ...

  5. jzoj5904. 【NOIP2018模拟10.15】刺客信条(并查集)

    5904. [NOIP2018模拟10.15]刺客信条 Description 故事发生在1486 年的意大利,Ezio 原本只是一个文艺复兴时期的贵族,后来因为家族成员受到圣殿骑士的杀害,决心成为一 ...

  6. jzoj5920. 【NOIP2018模拟10.21】风筝(dp,最长上升子序列)

    5920. [NOIP2018模拟10.21]风筝 Description 当一阵风吹来,风筝飞上天空,为了你,而祈祷,而祝福,而感动-- Description oyiya 在 AK 了 IOI 之 ...

  7. JZOJ-senior-5937. 【NOIP2018模拟10.30】斩杀计划

    Time Limits: 1000 ms Memory Limits: 262144 KB Description 众所周知,小J和小G是死对头,一天小G带领一群小弟找到了小J. 小G有n个小弟,第i ...

  8. JZOJ5937. 【NOIP2018模拟10.30】斩杀计划

    Description 小G有n个小弟,第i个小弟有ai点攻击力,小G有m点血量. 小J在小G找小第的时间里去找小Z学到了膜法,他在大战前配置了三种魔法药水 1:复用型药水:花费1法力值,选择小G的攻 ...

  9. JZOJ 5937. 【NOIP2018模拟10.30】斩杀计划

    问题 小G有n个小弟,第i个小弟有ai点攻击力,小G有m点血量.小J在小G找小第的时间里去找小Z学到了膜法,他在大战前配置了三种魔法药水1:复用型药水:花费1法力值,选择小G的攻击力小于等于2的一个小 ...

最新文章

  1. Linux 查看进程命令
  2. C++ pair类模板
  3. 软件系统性能优化策略--SQL优化
  4. 调查:12%受访者认为2021年比特币将突破10万美元
  5. linux++php无法解析,怎么解决linux php无法解析的问题
  6. Solana代码解析
  7. P3537 [POI2012]SZA-Cloakroom
  8. ajax 发送 put 请求
  9. Pinned Memory 多设备异步拷贝
  10. SVA16.14并发断言翻译笔记$inferred_clock和$inferred_disable(六)
  11. 怎么在Word文档中更改所有数字和英文字母的字体
  12. lucene java 庖丁解牛_Lucene分词器之庖丁解牛
  13. 解决QQ安全进程(护盾)弹出问题
  14. VSCode Tab按键失效,无法自动补全是什么情况?
  15. 美国谍梦第三至五季/全集The Americans迅雷下载
  16. VHDL出现综合错误:“ERROR:Xst:827 - file_name Line xx: Signal xx cannot be synthesized, bad synchronous desc
  17. 如果入职体检不合格该怎么办?
  18. 网络营销专家分析SNS社区一般推广方式及要点
  19. 为什么恒压驱动电源会缩短LED的使用寿命?
  20. 5. (6.9~7.4)2022年自动化保研信息+分析汇总(夏令营)

热门文章

  1. bash逐行读取文件
  2. 在github上写个人简历——先弄个主页
  3. Leetcode36.Valid Sudoku有效的数独
  4. cocos中的Box2d物理引擎
  5. 职场漂流记:序章说明之要
  6. php thumbs.db,禁止thumbs.db自动生成的方法
  7. 朋友今年38岁,从事非标机械设计有12年了
  8. [No00000E]PPT快捷键大全 PowerPoint2013/2010/2007/2003常用快捷
  9. python 自动打开登陆应用编码_python百度自动登录代码
  10. Vysor无线投屏+AndroidStudio真机调试