n个数字中最多有多少不重叠的非空区间
来源:互联网 发布:桌面整洁 知乎 编辑:程序博客网 时间:2024/06/05 17:58
问题
给出n个数字a_1,…,a_n,最多有多少不重叠的非空区间,使得每个区间内数字 xor都等于0。即找出最大的k,使得存在k个区间(l[i],r[i]),满足1<=l[i]<=r[i]<=n(1<=i<=k),r[i]
#include <iostream>#include<vector>#include<algorithm>using namespace std;int main(){ int count; while (cin >> count) { vector<int> arr; for (int i = 0; i < count; i++) { int data; cin >> data; arr.push_back(data);//把输入的数放到数组。 } int start = 0; int sum=0; for (int i = 0; i < count; i++)//整个数组遍历之后,算法就结束了。 { if (arr[i] == 0) { sum++; start = i + 1;//如果碰到一个数为0,直接计数加1,并舍弃之前的数。 continue; } for (int j = start; j < i; j++)//将这个小区间内的所有数字依次异或 { int flag = 0; for (int k = j; k <= i; k++) { flag ^= arr[k]; } if (flag == 0) { sum++; start = i + 1;//需要将K之前的数剔除出去,继续寻找下个区间异或为0的。此时K=i. continue; } } } cout << sum << endl; } return 0;}
阅读全文
0 1
- n个数字中最多有多少不重叠的非空区间
- 编写一个程序,最多将10个donation值读入到一个double数组中。程序遇到非数字输入时将结束输入,并报告这些数字的平均值以及数组中有多少个数字大于平均值。
- n!末尾有多少个0以及n!末尾第一个非0数字
- 将m个相同的苹果放进n个相同的盘子中,盘子允许空,有多少种方法
- 求(1~n)中有多少个数字包含49数字
- n的阶乘结果中末尾有多少个零?
- 一个n位数平均有多少个单调区间?
- 趣题:一个n位数平均有多少个单调区间?
- hdu 2512 斯特灵数,贝尔数 将N个元素分成若干个集合,集合不为空,有多少种分法
- 算法:有一串整数,这串数字数字不定,共N个,求出其中出现次数最多的数字
- N!中有多少个m
- n!中,有多少个2
- 区间内有多少个不同的数字(离线树状数组)
- 集合A中最多有多少个元素
- poj 1664 放苹果 将m个相同的苹果放进n个相同的盘子中,盘子允许空,有多少种方法
- C/C++编程题1-放苹果,将m个相同的苹果放进n个相同的盘子中,盘子允许空,有多少种方法
- 转:poj 1664 放苹果 将m个相同的苹果放进n个相同的盘子中,盘子允许空,有多少种方法
- C语言从数字n到m有多少的不带4的整数
- 浅析MySQL中exists与in的使用
- ndk读取文件夹下的文件列表
- live555 源码分析:简介
- ip获取归属地位置信息
- 项目管理基础名词
- n个数字中最多有多少不重叠的非空区间
- SpringBoot学习-支持JPA
- 素数对
- 指针函数 与 函数指针 以及 指针的指针 与 指向指针数组的指针 的区别
- No message found under code 'login.error' for locale 'zh'. 的解决办法
- #Java 核心技术卷一阅读笔记# 第八章 泛型程序设计
- js数字精度问题
- Btree索引和Hash索引
- 大数据架构师必读:常见的七种Hadoop和Spark项目案例