bzoj4917: Hash Killer IV
来源:互联网 发布:人工智能不是威胁辩论 编辑:程序博客网 时间:2024/05/22 05:06
传送门
话说标准题解里要用扩欧?
我太弱了,想不出来用扩欧怎么做。
然后我就自己yy了一个做法:
每一次总有某些二进制位上不会改变。
然后根据这些不会改变的位置推出其他改变过后的位置。
这种做法好像是对的? 反正b站上A了就当他是对的
时间复杂度O(QlogAi)
#include<cmath>#include<cstdio> #include<cstdlib>#include<cstring> #include<iostream>#include<algorithm>using namespace std;unsigned int q,t,bin[35];int main(){ scanf("%u",&q); bin[0]=1; for (int i=1;i<=31;i++) bin[i]=bin[i-1]*2; while (q--){ scanf("%u",&t); for (int i=0;i<=15;i++) t-=((t/bin[i])&1)*bin[i+16]; //printf("%u ",t); for (int i=31;i>=11;i--) t^=((t/bin[i])&1)*bin[i-11]; //printf("%u ",t); for (int i=0;i<=28;i++) t-=((t/bin[i])&1)*bin[i+3]; //printf("%u ",t); for (int i=31;i>=6;i--) t^=((t/bin[i])&1)*bin[i-6]; //printf("%u ",t); for (int i=0;i<=21;i++) t-=((t/bin[i])&1)*bin[i+10]; printf("%u\n",t); }}
阅读全文
0 0
- bzoj4917: Hash Killer IV
- BZOJ4917 Hash Killer IV
- bzoj4917: Hash Killer IV
- [BZOJ4917][Lydsy六月份月赛 .A][模拟]Hash Killer IV
- bzoj4917 [Lydsy六月月赛]Hash Killer IV
- 4917: Hash Killer IV
- 4917: Hash Killer IV
- bzoj 4917: Hash Killer IV 模拟
- 【BZOJ3098】Hash Killer Ⅱ
- BZOJ3098: Hash Killer II
- 3097: Hash Killer I
- bzoj 3098 hash killer
- 3098: Hash Killer II
- 3097: Hash Killer I
- bzoj3097 Hash Killer I
- bzoj3098 Hash Killer II
- 【BZOJ 3097】 Hash Killer I
- bzoj 3098: Hash Killer II
- Nginx+tomcat7+memcached的session共享問題
- 自定义生成静态页面练习
- 在U盘上运行的 Windows、windows to go、WTG辅助工具 v4.6
- 114. Flatten Binary Tree to Linked List
- 域名过期提前预警脚本
- bzoj4917: Hash Killer IV
- 英语博客
- 多线程run和start的区别
- Java注解解析 整理
- asp.net使用服务器控件Image/ImageButton显示本地图片
- ested exception is org.xml.sax.SAXParseException; lineNumber: 23; columnNumber: 106; cvc-elt.1: 找不到
- Spring中事务的传播行为
- JSP指令(转载)
- Arcgis中设置.mxd相对路径