NYOJ----1124数量
数量
- 描述
-
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 5
1 2
1 3
1 4
2 4
3 5
1 5 - 样例输出
-
0 2
1 2
2 2
2 1
3 0
3 2//主要是要剔除0,即不确定的数量
#include <stdio.h>
int ydog[],dog[],flag[],flag1[];//定义全局变量区而不可定义为栈区(栈溢出),s[0] = 0
int main()
{
int N,M,i,a,b,s;
while(scanf("%d%d",&N,&M) != EOF)
{
for(i=;i<=N;i++)
{
scanf("%d",&ydog[i]);
if(ydog[i] > )
{
dog[i] = dog[i-] + ;//dog[0] = 0
flag[i] = ;//咬人
flag1[i] = flag1[i-];//要剔除的0的个数和前一个相同
}
else{
dog[i] = dog[i-];//dog[0] = 0
flag[i] = ;//不确定和确定不咬人的
if(ydog[i] == )
flag1[i] = flag1[i-] + ;//要剔除掉0(不确定)
else{
flag1[i] = flag1[i-];
}
}
}
for(i=;i<=M;i++)
{
scanf("%d%d",&a,&b);//编号
printf("%d %d\n",dog[b]-dog[a]+flag[a],(b-a+-(flag1[b]-flag1[a]+(!ydog[a])))-(dog[b]-dog[a]+flag[a]));
}
}
return ;
}//----JZT_wuyang
#include <stdio.h>
int main()
{
int n, m, x, y, z, i, a[] = {}, b[] = {};
while (~scanf("%d%d", &n, &m))
{
for (i = , y = z = ; i <= n; i++)
{
scanf("%d", &x);
if (x > )
y ++;
else if (x < )
z ++;
a[i] = y;
b[i] = z;
}
while (m--)
{
scanf("%d%d", &x, &y);
printf("%d %d\n", a[y]-a[x-], b[y]-b[x-]);
}
}
return ;
}
NYOJ----1124数量的更多相关文章
- NYOJ 方案数量
1.递归求解(直接递归会超时,要用备忘录法) # include<iostream> # include<stdio.h> #include <map> using ...
- 5 weekend01、02、03、04、05、06、07的分布式集群的HA测试 + hdfs--动态增加节点和副本数量管理 + HA的java api访问要点
weekend01.02.03.04.05.06.07的分布式集群的HA测试 1) weekend01.02的hdfs的HA测试 2) weekend03.04的yarn的HA测试 1) wee ...
- nyoj 0325 zb的生日(dp)
nyoj 0325 zb的生日 zb的生日 时间限制:3000 ms | 内存限制:65535 KB 难度:2 描述 今天是阴历七月初五,acm队员zb的生日.zb正在和C小加.never在武汉集 ...
- NYOJ 1007
在博客NYOJ 998 中已经写过计算欧拉函数的三种方法,这里不再赘述. 本题也是对欧拉函数的应用的考查,不过考查了另外一个数论基本定理:如何用欧拉函数求小于n且与n互质所有的正整数的和. 记eule ...
- NYOJ 998
这道题是欧拉函数的使用,这里简要介绍下欧拉函数. 欧拉函数定义为:对于正整数n,欧拉函数是指不超过n且与n互质的正整数的个数. 欧拉函数的性质:1.设n = p1a1p2a2p3a3p4a4...pk ...
- Web网站中利用JavaScript中ActiveXObject对象获取硬件信息(显示器数量、分辨率)从而进行单双屏跳转
前言:最近这两天工作上,要实现一个功能,在好友阿聪的帮助下,算是比较好的解决了这个需求. B/S的Web网站,需要实现点击按钮时,根据客户端连接的显示屏(监视器)数量进行,单双屏跳转显示新页面. 由于 ...
- Linux 解决数量庞大wildfly容器启动与停止的脚本
一.问题 因公司业务的发展,后台架构的变更,导致测试环境(Linux)部署与管理困难成倍增长,duang的一下,增加N倍.进入正题说问题: 问题1. 测试环境包含普通用户环境.开发者用户环境,原来只 ...
- [LeetCode] Minimum Number of Arrows to Burst Balloons 最少数量的箭引爆气球
There are a number of spherical balloons spread in two-dimensional space. For each balloon, provided ...
- [LeetCode] Number of Segments in a String 字符串中的分段数量
Count the number of segments in a string, where a segment is defined to be a contiguous sequence of ...
- [LeetCode] Number of Islands II 岛屿的数量之二
A 2d grid map of m rows and n columns is initially filled with water. We may perform an addLand oper ...
随机推荐
- 最全面的jdbcUtils,总有一种适合你
附加jar包,TxQueryRunner.java文件,dbconfig.properties配置文件(点击链接下载): http://files.cnblogs.com/files/xiaoming ...
- DDD开发框架ABP之导航菜单
每一个网站都会有导航菜单(通常不止一个),ASP.NET Boilerplate(后文简称ABP)提供了一种创建和使用菜单的通用架构,利用架构我们可以方便的创建菜单并显示给用户.本文主要说明菜单的创建 ...
- 【FFmpeg】ffplay播放rtsp视频流花屏问题
问题描述:ffplay播放rtsp视频流时,播放过程中随机出现花屏现象. 基本流程学习:阅读ffplay源码,熟悉其播放rtsp视频流的基本流程. 在ffplay源码阅读和分析的基础上,画出了其播放r ...
- CRM Look Up 解决方案
CRM 前瑞开发中关于lookup的开发工作肯定会遇到,例如选中一个客户或者联系人后自动把相关的信息映射到相关记录上,这样可以减少用户的输入工作.我们在CRM 的映射关系中可以配置相关字段的映射可以解 ...
- Objective-C 理解之方括号[ ]的使用
1,用于通知某个对象该做什么,即通知对象去执行某动作. 在Objective-c中,“[]”的意义:它们用于通知某个对象该做什么.这种通知对象执行某中操作的行为被称为“发送消息”. 例如: [sh ...
- 发布的时候Archive灰色
主要是因为发布的时候要选为将模拟器选择一下,选为Generic iOS Device. 来自为知笔记(Wiz)
- (方法调配)Method Swizzling
一.概念 方法调配:因为Objective-C是运行时语言,也就是说究竟会调用何种方法要在运行期才能解析出来.那么我们其实也可以在运行时改变选择子名称.这样我们既不需要查看到源代码,又没有必要去重写子 ...
- OC第一讲:类和对象
今天终于开始进行OC的学习了 一.首先讲了NSLog NSLog是oc里面的输出语句,其用法和printf差不多,但是还是有差别的 1,NSLog是自动换行的,不用像printf那样还需要加'\n': ...
- IOS开发--常用的基本GDB命令
gdb不是万能的,可是没有gdb却是万万不能的.这里给大家简单介绍下iOS开发中最基本的gdb命令. po po是print-object的简写,可用来打印所有NSObject对象.使用举例如下: ( ...
- Mac搭建本地svn服务器,并用Cornerstone连接服务器
Mac默认已经安装了svn,我们只需要进行配置并开启就可以了 首先我们可以验证一下是否安装了svn,打开终端,输入命令 svnserve --version 这里可以看到目前svn的版本号,说明已经安 ...