hdu_5683_zxa and xor(非正解的暴力)
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=5683
题意:
zxa最近对按位异或(exclusive disjunction)产生了极大的兴趣,为此他拿出了一个长度为nn的非负整数序列a_1,a_2,\cdots,a_na1,a2,⋯,an。
zxa觉得这样太单调了,于是他定义了一种方法funct(x,y)funct(x,y),表示将a_xax不可逆转地修改为yy后计算\otimes_{1\leq i < j\leq n}{(a_i+a_j)}⊗1≤i<j≤n(ai+aj)作为该方法的返回值。
zxa很好奇,如果他对这个序列调用mm次这样的方法,那么每次得到的返回值分别是多少,你能帮助他吗?
提示:\otimes_{1\leq i < j\leq n}{(a_i+a_j)}⊗1≤i<j≤n(ai+aj)即(a_1+a_2)\otimes(a_1+a_3)\otimes\cdots\otimes(a_1+a_n)\otimes(a_2+a_3)\otimes(a_2+a_4)\otimes\cdots\otimes(a_2+a_n)\otimes\cdots\otimes(a_{n-1}+a_n)(a1+a2)⊗(a1+a3)⊗⋯⊗(a1+an)⊗(a2+a3)⊗(a2+a4)⊗⋯⊗(a2+an)⊗⋯⊗(an−1+an)。
第一行有一个正整数TT,表示有TT组数据。
对于每组数据:
第一行有两个正整数nn和mm。
第二行有nn个非负整数,表示a_1,a_2,\cdots,a_na1,a2,⋯,an。
接下来mm行,第i(1\leq i\leq m)i(1≤i≤m)行有两个非负整数xx和yy,表示第ii调用的是funct(x,y)funct(x,y)。
每一行相邻数字之间只有一个空格。
1\leq T\leq 1000,2\leq n\leq 2\cdot10^4,1\leq m\leq 2\cdot10^4,0\leq a_i,y\leq 10^9,1\leq x\leq n,1\leq\sum{n},\sum{m}\leq10^51≤T≤1000,2≤n≤2⋅104,1≤m≤2⋅104,0≤ai,y≤109,1≤x≤n,1≤∑n,∑m≤105
对于每组数据,输出mm行,第i(1\leq i\leq m)i(1≤i≤m)行包含一个非负整数,表示第ii次调用方法的返回值。
1
3 3
1 2 3
1 4
2 5
3 6
4
6
8
第一次操作后序列为\{4,2,3\}{4,2,3},(4+2)\otimes(4+3)\otimes(2+3)=4(4+2)⊗(4+3)⊗(2+3)=4。
第二次操作后序列为\{4,5,3\}{4,5,3},(4+5)\otimes(4+3)\otimes(5+3)=6(4+5)⊗(4+3)⊗(5+3)=6。
第三次操作后序列为\{4,5,6\}{4,5,6},(4+5)\otimes(4+6)\otimes(5+6)=8(4+5)⊗(4+6)⊗(5+6)=8。
题解:在BC的终测 我居然TLE了,不科学,唐老师放宽了时限,和我写法差不多,常数也差不多的都过了,然而我没过,很是不爽,然而在OJ上提交 5600+ms A C
#include<cstdio>
#define FFC(i,a,b) for(int i=a;i<=b;i++)
int s[],da[];
int main(){
int t,m,n,a,b;
scanf("%d",&t);
while(t--){
scanf("%d%d",&n,&m);
FFC(i,,n)scanf("%d",&s[i]);
FFC(i,,n){
int ans=;
FFC(j,i+,n)ans=ans^(s[i]+s[j]);
da[i]=ans;
}
FFC(i,,m){
scanf("%d%d",&a,&b);
int tmp=s[a];
s[a]=b;
int ans=,aans=;
FFC(j,a+,n)ans=ans^(b+s[j]);
da[a]=ans;
FFC(j,,a-)da[j]=da[j]^(s[j]+tmp),da[j]=da[j]^(s[j]+b);
FFC(i,,n)aans^=da[i];
printf("%d\n",aans);
}
}
return ;
}
hdu_5683_zxa and xor(非正解的暴力)的更多相关文章
- BZOJ3110 K大数查询 【线段树 + 整体二分 或 树套树(非正解)】
Description 有N个位置,M个操作.操作有两种,每次操作如果是1 a b c的形式表示在第a个位置到第b个位置,每个位置加入一个数c 如果是2 a b c形式,表示询问从第a个位置到第b个位 ...
- [Bzoj2120]数颜色 (非正解 )(莫队)
2120: 数颜色 Time Limit: 6 Sec Memory Limit: 259 MBSubmit: 6286 Solved: 2489[Submit][Status][Discuss] ...
- HDU - 5307 :He is Flying (分治+FFT)(非正解)
JRY wants to drag racing along a long road. There are nn sections on the road, the ii-th section has ...
- 【P2387】魔法森林(SPFA非正解)
题目链接 不会LCTqwq,看题解似乎SPFA也可以. 把边按a排序,从小到大每加一条边就以b为距离跑一遍SPFA,类似于Kruskal的想法吧…… 貌似是个暴力 (luoguLCT模块的题我都快通过 ...
- Luogu1099 树网的核 (暴力?,floyd?)(还未想正解,暴力就A了)
阅读理解两小时,手敲暴力思考5分钟.然后\(n^3\)就A了 暴力代码 #include <iostream> #include <cstdio> #include <c ...
- HDU 4691 正解后缀数组(暴力也能过)
本来是个后缀数组,考察算法的中级题目,暴力居然也可以水过,就看你跳不跳坑了(c++和G++返回结果就很不一样,关键看编译器) 丝毫不差的代码,就看运气如何了.唯一差别c++还是G++,但正解是后缀数组 ...
- Bzoj 1537: [POI2005]Aut- The Bus 题解 [由暴力到正解]
1537: [POI2005]Aut- The Bus Time Limit: 5 Sec Memory Limit: 64 MBSubmit: 387 Solved: 264[Submit][S ...
- 【BZOJ-4059】Non-boring sequences 线段树 + 扫描线 (正解暴力)
4059: [Cerc2012]Non-boring sequences Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 440 Solved: 16 ...
- 【百度之星2014~复赛 解题报告~正解】The Query on the Tree
声明 笔者最近意外的发现 笔者的个人网站http://tiankonguse.com/ 的很多文章被其它网站转载,但是转载时未声明文章来源或参考自 http://tiankonguse.com/ 网站 ...
随机推荐
- A*寻路算法 (cocos2d-js详细代码)
看了几天的A*算法,感觉要成为一个游戏开发者,有必要把这个著名的算法拿到手. 网上有此算法的代码片段,但主要还是些模板类的伪代码,所以想分享一段完整的A*算法代码供大家更好的理解!(这里使用的是js语 ...
- hibernate异常:org.hibernate.exception.GenericJDBCException
异常:org.hibernate.exception.GenericJDBCException 提示:Cannot open connection 提示:不能打开链接 一般这个异常是由 java.sq ...
- Android Studio Gradle更新的解决办法
环境: Win7_64旗舰版.Android Studio2.1.1 问题描述: 在打开Android Studio项目的时候,会下载项目对应版本的gradle,由于是国外网站导致更新较慢,该版本是在 ...
- C#之委托(函数参数传递)【转】
原文:http://blog.csdn.net/wangdan199112/article/details/18796527 在学委托这块儿的时候,函数参数这块不是很理解,于是针对一个例子做了深入的理 ...
- Android底部导航栏——FrameLayout + RadioGroup
原创文章,转载请注明出处http://www.cnblogs.com/baipengzhan/p/6285881.html Android底部导航栏有多种实现方式,本文详细介绍FrameLayout ...
- 1-jQuery - AJAX load() 方法【基础篇】
jQuery load() 方法是简单但强大的 AJAX 方法:load() 方法从服务器加载数据,并把返回的数据放入被选元素中. 格式 $(selector).load(URL 源码 index.h ...
- H5复制粘贴
H5 复制粘贴 - execCommand 字数748 阅读399 评论0 喜欢0 需求:自动复制一段内容到剪切板, 让用户可以在其他客户端粘贴(发小广告做推广经常要用吧) window.clipbo ...
- Python虚拟环境的配置
Python中,配置虚拟环境主要是为了防止版本之间的冲突,我是这么理解的: 1.用虚拟环境可以在一个电脑中使用多个Python解释器以及扩展: 2.可以方便的在同一台电脑中使用多个版本的代码. 虚拟环 ...
- ajax不进success,
$.ajax({ url:"/order/pay_order_wx?order_id="+order_id, type:'GET', data:"{}", da ...
- ElasticSearch(2)-文档
上一篇 ES(1) 官网原地址:https://www.elastic.co/guide/en/elasticsearch/reference/1.7/_cluster_health.html ES权 ...