codeforces 416div.2
点击题号进入题面
-------
A
题意:
两个数a,b,第一回合a-1,第二回合b-2,第三回合,a-3,以此类推
求谁先为负
分析:
数据量只有1e9,直接模拟,O(N0.5)能过
------
B
题意:
给一个序列,其中所有数字都不相同,现在M次询问
每次询问是对最初的序列的[a,b]进行排序,问其中的P点是否还在原地
分析:
数据量极小,n==1e4,m==1e4,直接遍历[a,b]如果有p-a+1个数字小于等于p就Yes
------
C
题意:
给一个序列,要求分为多个区间,每个区间里的数字不能再次出现在其他地方
对所有区间去重后取异或
求最大值,注意数据量不大
分析:
有点像区间DP,需要预处理,N2预处理区间异或和,N预处理每个数字第一次和最后一次出现的位置
然后进行dp,记dp[i]为到i的最优解
决策1 不把i放入区间 dp[i]-dp[i1]
决策2 把i放入,dp[i]=max(dp[i-1],dp[i第一次出现的位置]+s[i第一次出现的位置][当前位置]]
-----
D
题意:
交互式问题
给个迷宫,保证有一条路,从1,1开始
但是一开始可能上下互换或者左右互换
每输出一个决策,系统会反馈给你实际上走到的地方
分析:
先bfs找到最短路并记录路径,然后输出,过程中根据反馈修改方向,输出正确的最短路
-------