Codeforces Round #539 (Div. 2) 异或 + dp
https://codeforces.com/contest/1113/problem/C
题意
一个n个数字的数组a[],求有多少对l,r满足\(sum[l,mid]=sum[mid+1,r]\),sum为异或和(n<=3e5,a[i]<=2^20)
题解
- 异或和为零的区间可以分成任意两个区间(这两个区间的异或和相等)
- 定义dp[i][j]为异或和为i,下标为j(只记录奇偶)的前缀个数
- 枚举r,然后累加l
代码
#include<bits/stdc++.h>
#define M 3000005
#define ll long long
using namespace std;
ll f[M][3],a[M],ans;
int n,i;
int main(){
cin>>n;
for(i=1;i<=n;i++){scanf("%lld",&a[i]);a[i]^=a[i-1];}
f[0][0]=1;
for(i=1;i<=n;i++){
ans+=f[a[i]][i%2];
f[a[i]][i%2]++;
}
cout<<ans;
}
Codeforces Round #539 (Div. 2) 异或 + dp的更多相关文章
- Codeforces Round #539 (Div. 2) - C. Sasha and a Bit of Relax(思维题)
Problem Codeforces Round #539 (Div. 2) - C. Sasha and a Bit of Relax Time Limit: 2000 mSec Problem ...
- Codeforces Round #539 (Div. 2)
Codeforces Round #539 (Div. 2) A - Sasha and His Trip #include<bits/stdc++.h> #include<iost ...
- Codeforces Round #539 (Div. 2) 题解
Codeforces Round #539 (Div. 2) 题目链接:https://codeforces.com/contest/1113 A. Sasha and His Trip 题意: n个 ...
- Codeforces Round #539 (Div. 2) - D. Sasha and One More Name(思维)
Problem Codeforces Round #539 (Div. 2) - D. Sasha and One More Name Time Limit: 1000 mSec Problem ...
- Codeforces Round #539 (Div. 2) C. Sasha and a Bit of Relax(前缀异或和)
转载自:https://blog.csdn.net/Charles_Zaqdt/article/details/87522917 题目链接:https://codeforces.com/contest ...
- Codeforces Round #367 (Div. 2)---水题 | dp | 01字典树
A.Beru-taxi 水题:有一个人站在(sx,sy)的位置,有n辆出租车,正向这个人匀速赶来,每个出租车的位置是(xi, yi) 速度是 Vi;求人最少需要等的时间: 单间循环即可: #inclu ...
- Codeforces Round #131 (Div. 1) B. Numbers dp
题目链接: http://codeforces.com/problemset/problem/213/B B. Numbers time limit per test 2 secondsmemory ...
- Codeforces Round #131 (Div. 2) B. Hometask dp
题目链接: http://codeforces.com/problemset/problem/214/B Hometask time limit per test:2 secondsmemory li ...
- Codeforces Round #276 (Div. 1) D. Kindergarten dp
D. Kindergarten Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/problemset/proble ...
随机推荐
- python数据格式化之pprint
python数据格式化之pprint 2017年06月17日 13:56:33 阅读数:2291 简介 pprint模块 提供了打印出任何Python数据结构类和方法. 模块方法: 1.class p ...
- first*php*self*
要完成一个简单的php程序,首先就是要分析一下要完成所需要实现哪些功能,以及页面的整体布局,以及会涉及到的一部分数据库的函数以及SQL语句. 今天自己简要做了一个php程序,拿到手后就开始创建所能用到 ...
- 学习excel的使用技巧四显示正常的数字
记得之前在excel中输入一些数字比如输入手机号 就会变成1.E几类似这种 那么怎样显示正常的数字呢 先选中要操作的输入框 1 找到 数字 这个功能的地方 2 设置为 数值 并且小数点为0 3 ...
- centos svn强制要求提交代码时写注释
1. 重命名svn主目录中hooks的pre-commit.tmpl文件为pre-commit,并添加可执行权限 mv pre-commit.tmpl pre-commit chmod u+x pre ...
- mybatis拦截器获取sql
mybatis获取sql代码 package com.icourt.alpha.log.interceptor; import org.apache.ibatis.executor.Executor; ...
- tomcat 部署swagger 请求到后端乱码
问题: @ApiOperation(value = "", notes = "查看关键词列表") @ResponseBody @RequestMapping(v ...
- python多线程简单爬虫
爬虫本质就是将网站或者接口的数据经过筛选后按需求保存 这里实现一个简单爬虫仅供参考 import requests import bs4 import threading import queue i ...
- Kubelet bootstrap认证配置步骤
kubelet 授权 kube-apiserver 的一些操作 exec run logs 等 RBAC 只需创建一次就可以 kubectl create clusterrolebinding kub ...
- Docker 清理命令
原文地址http://www.runoob.com/w3cnote/docker-clear-command.html,这里仅作为记录,便于以后查阅 查看正在运行的容器(Container) dock ...
- c#mvc实现登录
本篇介绍MVC实现登录的方式,如下: 1.通过MVC Form 表单请求实现登录 2.通过AJAX GET 请求MVC Controller 实现登录 3.通过AJAX POST 请求MVC Cont ...