codeforces-302A-Eugeny and Array


codeforces-302A-Eugeny and Array


                    time limit per test1 second     memory limit per test256 megabytes

Eugeny has array a = a1, a2, …, an, consisting of n integers. Each integer ai equals to -1, or to 1. Also, he has m queries:

Query number i is given as a pair of integers li, ri (1 ≤ li ≤ ri ≤ n).
The response to the query will be integer 1, if the elements of array a can be rearranged so as the sum ali + ali + 1 + … + ari = 0, otherwise the response to the query will be integer 0.
Help Eugeny, answer all his queries.

Input
The first line contains integers n and m (1 ≤ n, m ≤ 2·105). The second line contains n integers a1, a2, …, an (ai = -1, 1). Next m lines contain Eugene’s queries. The i-th line contains integers li, ri (1 ≤ li ≤ ri ≤ n).

Output
Print m integers — the responses to Eugene’s queries in the order they occur in the input.

input
2 3
1 -1
1 1
1 2
2 2
output
0
1
0

input
5 5
-1 1 1 1 -1
1 1
2 3
3 5
2 5
1 5
output
0
1
0
1
0

题目链接:cf-302A

题目大意:给出一个序列a,问在a->l~r的范围内,是否总共为0。

题目思路:刚开始想用线段树,但发现样例2看不懂。结果。。 if the elements of array a can be rearranged (如果序列a中元素经过重新排列后…)直接暴力就可以了

以下是代码:

#include <vector>
#include <map>
#include <set>
#include <algorithm>
#include <iostream>
#include <cstdio>
#include <cmath>
#include <cstdlib>
#include <string>
#include <cstring>
using namespace std;
int a[200010];
int main(){
    int n,q;
    cin >> n >> q;
    int num1 = 0,num2 = 0;
    for (int i = 1; i <= n; i++)
    {
        scanf("%d",&a[i]);
        if (a[i] == 1) num1++;
        else num2++;
    }
    while(q--)
    {
        int l,r;
        scanf("%d%d",&l,&r);
        int ret = r - l + 1;
        if (ret % 2) printf("0\n");
        else
        {
            if (num1 >= ret / 2 && num2 >= ret / 2) printf("1\n");
            else printf("0\n");
        }   
    }
    return 0;
}

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/loy_184548/article/details/49966915
文章标签: 302A
个人分类: ACM_暴力 codeforces
想对作者说点什么? 我来说一句

arrayList排序

2009年04月14日 11KB 下载

各国家电话前缀 plist

2017年09月19日 25KB 下载

PHP树形结构类

2018年05月25日 2KB 下载

磁盘阵列(Disk Array)

2007年08月17日 268KB 下载

HP Smart Array阵列配置

2010年03月11日 982KB 下载

130道asp.net面试题

2011年08月06日 126KB 下载

各种排序算法

2013年04月28日 4KB 下载

快速排序Java实现程序

2015年05月24日 762B 下载

matlab字符串、元胞和构架数组

2010年06月04日 131KB 下载

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭