NOIP模拟赛 czy的后宫3
【题目描述】
上次czy在机房妥善安排了他的后宫之后,他发现可以将他的妹子分为c种,他经常会考虑这样一个问题:在[l,r]的妹子中间,能挑选出多少不同类型的妹子呢?
注意:由于czy非常丧尸,所以他要求在所挑选的妹子类型在[l,r]中出现次数为正偶数,你懂得。
问题简述:n个数,m次询问,每次问[l,r]区间有多少个数恰好出现正偶数次
【输入格式】
第一行3个整数,表示n,c,m
第二行n个数,每个数Ai在[1,c]之间,表示一个Ai类型的妹子
接下来m行,每行两个整数l,r,表示询问[l,r]这个区间的答案
【输出格式】
有m行,表示第i次询问的答案
【样例输入】
5 5 3
1 1 2 2 3
1 5
3 4
2 3
【样例输出】
2
1
0
【数据范围】
共有10组测试数据
1-4组n,m=500,2000,5000,10000,c=1000
5-7组n,m=20000,30000,40000,c=10000
8-10组n,m=50000,80000,100000,c=100000
数据保证随机生成
同小z的袜子
#define LL long long #include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
#include<algorithm>
using namespace std; const int MAXN=+; struct qnode
{
int l,r,id;
}qu[MAXN]; int n,c,m,block;
int a[MAXN],pos[MAXN];
LL num[MAXN],ans[MAXN],temp; int read()
{
int x=,f=;char ch=getchar();
while(ch<''||ch>''){if(ch=='-')f=-f;ch=getchar();}
while(ch>=''&&ch<=''){x=x*+ch-'';ch=getchar();}
return x*f;
} bool cmp(qnode a,qnode b)
{
if(pos[a.l]==pos[b.l])
return a.r<b.r;
return pos[a.l]<pos[b.l];
} void update(int x,int d)
{
int t=num[a[x]];
num[a[x]]+=d;
if(t%==&&num[a[x]]%==&&num[a[x]]>) temp++;
if(t%==&&num[a[x]]%==&&t>) temp--;
} int main()
{
n=read();c=read();m=read();
block=(int)sqrt(n);
for(int i=;i<=n;i++)
{
a[i]=read();
pos[i]=(i-)/block+;
}
for(int i=;i<=m;i++)
{
qu[i].l=read();qu[i].r=read();
qu[i].id=i;
}
sort(qu+,qu+m+,cmp); int pl=,pr=,id;
for(int i=;i<=m;i++)
{
id=qu[i].id;
if(qu[i].l==qu[i].r)
{
ans[id]=;
continue;
}
if(pr<qu[i].r)
for(int j=pr+;j<=qu[i].r;j++)
update(j,);
else
for(int j=pr;j>qu[i].r;j--)
update(j,-);
pr=qu[i].r;
if(pl<qu[i].l)
for(int j=pl;j<qu[i].l;j++)
update(j,-);
else
for(int j=pl-;j>=qu[i].l;j--)
update(j,);
pl=qu[i].l;
ans[id]=temp;
}
for(int i=;i<=m;i++)
cout<<ans[i]<<endl;
return ;
}
NOIP模拟赛 czy的后宫3的更多相关文章
- NOIP模拟赛 czy的后宫6
		
czy的后宫6 题目描述 众所周知的是丧尸czy有很多妹子(虽然很多但是质量不容乐观QAQ),今天czy把n个妹子排成一行来检阅.但是czy的妹子的质量实在……所以czy看不下去了.检阅了第i个妹子会 ...
 - NOIP模拟赛 czy的后宫4
		
czy的后宫4 [问题描述] czy有很多妹子,妹子虽然数量很多,但是质量不容乐观,她们的美丽值全部为负数(喜闻乐见). czy每天都要带N个妹子到机房,她们都有一个独一无二的美丽值,美丽值为-1到- ...
 - NOIP模拟赛 czy的后宫5
		
描述 czy要召集他的妹子,但是由于条件有限,可能每个妹子不能都去,但每个妹子都有一个美丽值,czy希望来的妹子们的美丽值总和最大(虽然……). czy有一个周密的电话通知网络,它其实就是一棵树,根结 ...
 - NOIP模拟赛 czy的后宫
		
[题目描述] czy要妥善安排他的后宫,他想在机房摆一群妹子,一共有n个位置排成一排,每个位置可以摆妹子也可以不摆妹子.有些类型妹子如果摆在相邻的位置(隔着一个空的位置不算相邻),就不好看了.假定每种 ...
 - 2014-10-31 NOIP模拟赛
		
10.30 NOIp 模拟赛 时间 空间 测试点 评测方式 挖掘机(dig.*) 1s 256M 10 传统 黑红树(brtree.*) 2s 256M 10 传统 藏宝图(treas. ...
 - NOIP模拟赛20161023
		
题目名 双色球 魔方 czy的后宫 mex 源文件 ball.cpp/c/pas cube.cpp/c/pas harem.cpp/c/pas mex.cpp/c/pas 输入文件 ball.in c ...
 - NOIP模拟赛20161022
		
NOIP模拟赛2016-10-22 题目名 东风谷早苗 西行寺幽幽子 琪露诺 上白泽慧音 源文件 robot.cpp/c/pas spring.cpp/c/pas iceroad.cpp/c/pas ...
 - 大家AK杯 灰天飞雁NOIP模拟赛题解/数据/标程
		
数据 http://files.cnblogs.com/htfy/data.zip 简要题解 桌球碰撞 纯模拟,注意一开始就在袋口和v=0的情况.v和坐标可以是小数.为保险起见最好用extended/ ...
 - 【noip模拟赛4】Matrix67的派对 暴力dfs
		
[noip模拟赛4]Matrix67的派对 描述 Matrix67发现身高接近的人似乎更合得来.Matrix67举办的派对共有N(1<=N<=10)个人参加,Matrix67需要把他们 ...
 
随机推荐
- 洛谷P1002  过河卒
			
关于蒟蒻的我,刚刚接触DP.... 那么就来做一道简单DP吧.... 首先先看题: 题目描述 棋盘上AA点有一个过河卒,需要走到目标BB点.卒行走的规则:可以向下.或者向右.同时在棋盘上CC点有一 ...
 - 数据库性能分析 慢查询 profile工具
 - Centos 7 install cacti监控
			
首先,先安装LNMP服务 安装一: 如果觉得安装起来麻烦,可以到如下网站进行安装: https://lnmp.org/install.html 安装二: 采用yum或者安装包的方式进行安装,具体操作请 ...
 - FileUtils简化你的文件操作
			
前言: 在工作当中我们往往遇到很多文件的操作,我们也习惯写一些自己定义的工具类来简化文件操作,其实apache的commons的FileUtils类就是这样一个工具类,使用它能大大的简化我们对文件的操 ...
 - Python面向对象之类和实例
			
1.类的定义 定义是用过class关键字 class Student(object): pass class 后面紧接着是类名,即Student,类名通常是大写开头的单词, 紧接着是(object), ...
 - 7-36 旅游规划 (25 分(Dijkstra)
			
有了一张自驾旅游路线图,你会知道城市间的高速公路长度.以及该公路要收取的过路费.现在需要你写一个程序,帮助前来咨询的游客找一条出发地和目的地之间的最短路径.如果有若干条路径都是最短的,那么需要输出最便 ...
 - vue-cli搭建项目及代理路由设置
			
vue-cli 是vue.js 项目脚手架,使用 vue-cli 可以快速创建 vue 项目,GitHub地址是:https://github.com/vuejs/vue-cli 一. 安装 node ...
 - Jmeter4.0----监控服务器性能(7)
			
1.说明 JMeter是一款压力测试工具. 通常在压力测试中我们也需要监控和知道服务器的相关资源情况,jmeter本身不具备这个功能,今天我们主要说一下如何通过JMeter插件来监控服务器CPU.内存 ...
 - Ocelot API
			
Ocelot API网关的实现剖析 在微软Tech Summit 2017 大会上和大家分享了一门课程<.NET Core 在腾讯财付通的企业级应用开发实践>,其中重点是基于ASP.N ...
 - 二开获取yigo设计器里查询集合里中的某个SQL
			
package com.bokesoft.lrp_v3.mid.dongming.service; import java.math.BigDecimal; import java.util.Arra ...