数量
来源:互联网 发布:全时云会议mac版下载 编辑:程序博客网 时间:2024/04/27 22:56
数量
时间限制:200 ms | 内存限制:65535 KB
难度:0
- 描述
HJS大牛想去街上吃饭,街道旁边拴着很多狗,他想我堂堂......(省略n个字)岂会被狗咬,所以他很牛的从狗的面前经过,不管是否被上一条狗咬过,下次还会从狗的面前过(J I A N)
现在问题来了,我们给狗编号从1...n,有多次询问,每次询问M,N这一段有多少狗咬过他有多少狗没有咬过他
- 输入
- 输入有多组数据,每组数据有N,M代表N个狗,M次询问(n<=1000000)
接下来一行有n个数正数代表被狗咬,负数代表不咬,0代表不确定看心情,所以我们只计算确定的就可以了
接下来M行每行两个数a,b代表a到b这一段 - 输出
- 每次查询输出一行,每行两个数中间有一个空格,分别代表咬人的狗的数量,没咬人的数量
- 样例输入
5 6-1 -2 3 4 51 21 31 42 43 51 5
- 样例输出
0 21 22 22 13 03 2
- 来源
- 原创
- 上传者
TC_蒋鑫博
源代码:
#include<stdio.h>
int a[1000005];
int yao[1000005];
int meiyao[1000005];
int main()
{
int m,n,i,q,t;
while(~scanf("%d%d",&m,&n))
{
yao[1000005]={0};
meiyao[1000005]={0};
for(i=1;i<=m;++i)
{
scanf("%d",&a[i]);
if(a[i]>0)
{
yao[i]=yao[i-1]+1;
meiyao[i]=meiyao[i-1];
}
if(a[i]<0)
{
meiyao[i]=meiyao[i-1]+1;
yao[i]=yao[i-1];
}
if(a[i]==0)
{
meiyao[i]=meiyao[i-1];
yao[i]=yao[i-1];
}
}
while(n--)
{
scanf("%d%d",&q,&t);
printf("%d %d\n",yao[t]-yao[q-1],meiyao[t]-meiyao[q-1]);
}
}
return 0;
}
0 0
- 数量
- 数量
- 外贸英语:数量
- 数量限定词
- 灯塔数量
- 等式数量
- 灯塔数量
- 数量格式化
- 核桃数量
- 背包数量
- 方案数量
- 代码数量
- 水仙花数量
- 细胞数量
- 订单数量超过forecast数量问题
- 中国传统数量单位
- 数量*单价=金额
- 如何限制收件人数量
- Java中final、finally、finalize的区别
- 02.轮播图
- SpringMvc学习心得(二)spring注解配置原理浅析
- 最大公约数和最小公倍数
- 2.C语言数据类型
- 数量
- LeetCode 55 - Jump Game
- JS返回顶部的几种方法
- 游戏开发笔记(十)——移动功能设计
- 试试水
- sql查询相关技术-内连接查询
- unity之旅
- Win32学习笔记 - Windows 常用消息大全
- 录音项目随笔(一)